Xcode 4.6/Clang 4.2找不到C++ 11头文件

Mar*_*ram 5 c++ xcode std clang c++11

我试图在iOS项目中包含一些C++ 11标头,但是Xcode/Clang找不到它们.我试图包括<memory>,<functional>还有其他几个.但它抱怨它在构建期间无法找到它们(尽管我右键单击和"跳转到定义"加载文件......).如何让我的项目使用C++ 11头文件?

未找到
词法或预处理器问题"内存"文件未找到词法或预处理器问题"功能"文件

我的项目设置是:

C++语言Dialect = C++ 11 [-std = c ++ 11]
C++标准库= libc ++(支持C++ 11的LLVM C++标准库)

尝试包含标头的文件.h用于模板化类.h,并且包含在.mm实现中.

Mar*_*ram 9

事实证明,Clang的错误信息是无益的:这些文件的根包含是一个.m文件,编译为Objective-C,所以我将其重命名为.mm,编译为Objective-C++,它开始工作.

  • 感谢您回答这个问题。我的基类是 Objective-C 源,我需要将其更改为 Objective-C++。就我个人而言,我只是更改了侧边栏中的文件类型,但本质上是相同的修复 (2认同)