那里有C ++ 0x的任何实现吗?

时间:2010-03-19 11:13:58

标签: c++ c++11

微软即将推出的VC10除外?

3 个答案:

答案 0 :(得分:9)

here是几个主要编译器中c ++ 0x支持的一个很好的细分

答案 1 :(得分:7)

您可以为大多数兼容的C ++ 0x实现运行g++ -std=c++0x

从手册:

 c++0x
   The working draft of the upcoming ISO C++0x standard. This option enables experimental features that are
   likely to be included in C++0x. The working draft is constantly changing, and any feature that is enabled
   by this flag may be removed from future versions of GCC if it is not part of the C++0x standard.

作为一个愚蠢的小例子:

$ cat a.cpp    
const int FOO_VERSION = 2;

int main() {
    static_assert(FOO_VERSION >= 3, "Your version of Foo doesn't contain the necessary bugfixes to run this program correctly.");
    return 0;
}

$ g++ -std=c++0x a.cpp
a.cpp:1:17: error: stdio: No such file or directory
a.cpp: In function ‘int main()’:
a.cpp:6: error: static assertion failed: "Your version of Foo doesn\'t contain the necessary bugfixes to run this program correctly."

另外,正如@GMan在评论中提到的那样,GCC's list of C++0x compatibility可以在网上找到。

答案 2 :(得分:1)

Comeau - 尝试一下here。不,我不为他们工作/与他们有关系;)但他们做得很好。

英特尔还支持从{11}开始的some C ++ 0x。 (当前版本是11.1)