2013-01-17 161 views
12

我在练习C++。我只是在XCode中添加C++文件,并在其中写入一些字符串分割功能。之后,我将C++文件包括在我的AppDelegate文件中,扩展了.mm文件,并从C++类的.h文件中调用函数。但我发现一条红线的静态错误是'iostream'文件未找到。我使用了最新的XCode 4.5和iOS 6.0。请参阅我的错误或xcode屏幕的截图。 enter image description herexcode 4.5中发现'iostream'文件未找到错误?

我试图根据给定的link信息修改我的代码,但没有成功。 :(

我也遵循了这一link信息为好,但结果是一样的。

感谢 iHungry有

+0

不要从一个必须在Objective-C中工作的头文件中包含C#代码。 (你的问题可能是你在'.m'文件中包含'StringSplit.h') – Mankarse

+0

@Mankarse,对不起,我没有得到你。我必须在Objective-C类中包含C++类文件。我这样做,但它会给我带来额外的错误。 – Tirth

+0

如果'StringSplit.h'是Objective-C++(与Objective-C相对),那么您应该只从'.mm'文件包含它,而不是'.m'文件。 –

回答

10

Objective C.m扩展其执行的文件。如果你想在Objective C使用C++它应该有.mm扩展名,你可以在你的.mm文件中包含C++头文件,但是如果你想在你的.h文件中包含你的C++头文件,你需要检查macro的,像

#ifdef __cplus 
#include <iostream> 
#endif 

但是,我并没有被包括在.h文件C++头文件试过的任何功能。希望能帮助到你。

+0

+1 ........ – TheTiger

+1

YOu甚至可以使用C文件,其中包含@AnoopVaidya .C –

+0

,是的,我们可以。但根据我的要求,我必须在C++中执行此类功能。 – Tirth