我在Xcode中遇到了一些C ++ 11的问题

时间:2012-05-03 19:40:47

标签: c++ xcode c++11 osx-lion

我是使用Xcode for C ++的Mac OS X Lion用户,似乎没有可用于Xcode的更新。我似乎无法编译C ++ 11独占代码,但无论出于何种原因,我认为Apple已经实现了C ++ 11。是的,我确实支持命令行工具。

然后,那可能只是我。如果是这样,是否有任何类型的IDE支持C ++ 11或任何升级方式?

3 个答案:

答案 0 :(得分:8)

我使用Xcode并设置以下设置:

C ++语言方言:C ++ 11或GNU ++ 11

C ++标准库:libc ++(支持C ++ 11的LLVM C ++标准库)

Xcode版本:4.3.2

XCode project settings

答案 1 :(得分:3)

如果您正在使用Xcode 4.3,则需要使用C ++ 11功能的几个相关项目设置。第一种是使用clang编译器。像

这样的东西
GCC_VERSION = com.apple.compilers.llvm.clang.1_0
您的.xcconfig中的

会设置它,或者您可以使用GUI。

接下来,您需要告诉LLVM使用哪个C ++标准:

CLANG_CXX_LANGUAGE_STANDARD = gnu++11

这将使基于范围的语言功能,委托构造函数等可用。

最后,如果要使用C ++ 11 STL功能(例如std::unordered_map),则需要使用libc ++ STL:

CLANG_CXX_LIBRARY = libc++

答案 2 :(得分:0)

在XCode 5 / opencv 2.4.9上,我可以选择:

XCode settings

它构建没有错误。 如果我在没有指定C ++语言方言的情况下设置了libc ++,那么我会遇到与OP

相同的问题