2012-01-16 79 views
4

我一直使用C++庫不上的Xcode 3建工程的問題,但現在我得到鞏固和Xcode 4包括C/C++頭4

降庫建項目問題到Xcode 4項目,它的建立很好,但只要我#include它,我得到一個「詞法或預處理程序問題」的錯誤,更具體地說,「'字符串'文件沒有找到,其主頭文件的第4行

仔細檢查,錯誤指定'string' file not found in ~/my project's directory/include/mainheader.h

我試過列出的解決方案here,但沒有工作。

所以它認爲頭文件在我的項目目錄中,但它顯然是一個C/C++頭......我如何告訴Xcode查找這些C/C++頭文件?

+0

您是使用'#include「string.h」'還是'#include '?有區別。 – 2012-01-16 15:26:45

+0

該庫使用'#include ' – Eric 2012-01-16 15:28:51

+0

不應該是'#include '?我從來沒有聽說過在C++中包含一個名爲「string」的文件 – 2012-01-16 15:29:40

回答

12

的問題#include是在我的ViewController.mm的頂部,我已經給它.mm作爲擴展已經變成的Objective-C++。但是ViewController.mm最終被AppDelegate.m導入,這是默認的Objective-C,我忘記了它是Objective-C++,因此是問題所在。

因此重命名AppDelegate.mAppDelegate.mm解決了這個問題。

0

我認爲#include是一個C++類模板..因此,您需要在頭文件中使用名稱空間標準,並將源文件.m格式重命名爲.mm格式。

它爲我工作:)試試這個...

+1

我不熟悉xCode和OSX/iOS開發,但是這個陳述 - *#include是一個C++類模板* - 絕對不正確。 – 2012-01-16 18:37:08

+0

C++標準模板庫(STL)包含在幾個計算機科學類中使用的字符串類。 檢查:: http://www.bgsu.edu/departments/compsci/docs/string.html http://www.cplusplus.com/reference/string/string/string/ http:// www。 cplusplus.com/reference/string/string/ – Saif 2012-01-16 18:39:21

+0

謝謝,但沒有任何鏈接顯示解釋。這個頁面的最後:http://www.cplusplus.com/doc/tutorial/templates/ – 2012-01-16 18:40:55