在iOS工程中引入C++靜態庫


[轉載自戴維營教育:http://www.diveinedu.net/%E5%9C%A8ios%E5%B7%A5%E7%A8%8B%E4%B8%AD%E5%BC%95%E5%85%A5c%E9%9D%99%E6%80%81%E5%BA%93/]

在工程中引入使用C++編寫的靜態庫是,經常會因為包含標准庫而報錯:

Snip20130128 3

一般用兩種辦法可以解決這個問題:

  1. 使用老版本的編譯器,如llvm gcc 4.2,而不使用默認的llvm compiler,這時只要將工程中的任意一個.m文件的后綴改成.mm就可以了。xcode會自動引入c++標准庫。缺點是不支持ARC等新特性。

    Snip20130128 2

  2. 使用默認編譯器,但是引入stdc++.dylib庫,這是標准C++庫,就可以使用List、Queue等C++類了。

    Snip20130128 1

新的工程最好是使用第二種方法,這樣能使用oc以及編譯器的一些最新特性。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM