我按照之前类似帖子中的建议解决了Xcode 6.2中的这个问题。它已经重新出现在Xcode 6.3中并且不容易纠正。
我有一个混合的,objective-c和c ++项目,其中包含c ++代码的文件名为* .mm,项目设置为默认值。如果我加载了一小组c ++文件,并在一个新的项目中从一个固定的单页iOS应用程序的视图控制器调用一个c ++仿函数来创建它来隔离问题,它就会成功编译。然后,当我尝试添加包含先前编写(并成功编译)的混合代码的文件夹时,会出现以下错误。
词汇或预处理器问题,'数组'找不到文件
然后我尝试了组合&C语言方言'和&#C; C ++语言方言'作为c11 | gnu11和c ++ c11 | gnu ++ 11 |构建设置中的c ++ c14并且错误仍然存在。
删除对添加文件组的引用会使编译再次成功,即使构建设置指向gnu11或c11也可以。
如何添加或删除文件(所有在Xcode 6.2下编译)与编译器查找或未找到标准模板头文件有关?
答案 0 :(得分:1)
通过逐步添加文件,我将问题隔离到一个常规的objective-c文件(myfilename.m),该文件包含一个错误的C ++头文件,我将其命名为< Vertex.h' 。我重构了C ++头文件以获得hpp扩展名(参见条目' *.h or *.hpp for your class definitions')所以在将来发现这样的错误是一个简单的unix shell脚本问题。