2012-01-16 86 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