所以我需要在我的项目中使用矢量。我已将.m文件更改为.mm以使其成为Objective-C++。但是,当我试着说:#include <vector>没有这样的文件或目录
#include <vector>
在我的.h它表示无法找到文件或目录。如果我把这行代码放在我的.mm文件中,尽管这个错误没有出现,但是因为我需要一个在@interface
(在我的.h中)的向量,我应该怎么做才能使.h文件找到矢量文件?
而且,我试图将其更改为编译一切为的Objective-C++,但是,这并不工作,因为我在我使用cocos2d的库得到一些错误...
那么将.h和.mm结合在一起? – Dair
没有。这个特定的头文件(比如x.h)自然包含在x.mm中,但是大概你在某个OTHER模块中也使用了x类型的对象,比如说y。因此,y.h将包含“#include x.h”行。现在,当编译器编译y.m时,它不会期待C++代码,所以当遇到x.h的时候,它会提示“include”。因此,即使你在y.mm中没有使用任何C++代码,ym也必须重命名为y.mm。最后,yh可以包含在,例如zh中,并且你必须将zm转换为z.mm等。因此,包含它更容易如果可以的话,在mm文件中的矢量。 –
mackworth
好的,工作。谢谢! – Dair