在Xcode 4.5中,"C++标准库"和"C++语言方言"的"编译器默认值"是什么?

rib*_*ind 3 c++ xcode libstdc++ c++11 libc++

Xcode 4.5中"C++标准库"和"C++语言方言"的"编译器默认值"的值是多少?

我的猜测是libstdc ++和GNU ++ 98,但澄清一下会很好.

Xcode 4.5发行说明:

使用此Xcode版本创建的项目使用标准C++库的新libc ++实现.libc ++库仅在iOS 5.0及更高版本和OS X 10.7及更高版本上可用.12221787

要在项目的早期版本的iOS和OS X上启用部署,请将C++标准库构建设置设置为libstdc ++(Gnu C++标准库).

我注意到创建一个新项目显式设置了GNU ++ 11和libc ++,但"Compiler Default"可能是其他东西.

How*_*ant 8

以下是了解最佳方法:

 #include <iostream>

int main()
{
#ifdef _LIBCPP_VERSION
    std::cout << "Using libc++\n";
#else
    std::cout << "Using libstdc++\n";
#endif
#ifdef __GXX_EXPERIMENTAL_CXX0X__
#if __cplusplus == 1
    std::cout << "Language mode = gnu++11\n";
#else
    std::cout << "Language mode = c++11\n";
#endif
#else
#if __cplusplus == 1
    std::cout << "Language mode = gnu++98\n";
#else
    std::cout << "Language mode = c++98\n";
#endif
#endif
}
Run Code Online (Sandbox Code Playgroud)

只需使用编译器默认值构建一个测试项目并运行它.