C ++ 11被广泛支持吗?

时间:2012-07-23 09:33:23

标签: c++ c++11

对于希望他的C ++代码可以在不同的C ++编译器中移植的人来说,是时候开始使用C ++ 11,还是在所有主要编译器支持新标准之前还需要一段时间(VC,GCC,CLang,Intel)?

换句话说,主要编译器中C ++ 11支持的状态是什么?

3 个答案:

答案 0 :(得分:6)

Clang(定期更新):

  

http://clang.llvm.org/cxx_status.html

GCC 4.5至4.7(定期更新):

  

http://gcc.gnu.org/projects/cxx0x.html

Visual C ++ 10和11(有点旧,但我发现最新):

  

http://blogs.msdn.com/b/vcblog/archive/2011/09/12/10209291.aspx

答案 1 :(得分:3)

所有主要编译器的最新版本都支持某些 C ++ 11功能。但是还没有编译器完全支持,如果你希望你的代码是可移植的,你可能还需要考虑并非所有人都使用他们编译器的最新版本。

所以答案是“它取决于”。

所有主要编译器都支持许多功能。 (例如,auto,rvalue refs和lambdas可以广泛使用。)

还有一些功能可用于某些编译器,但不是所有编译器。

@Kos发布的链接应该可以让您了解每个编译器的位置。

您是否可以/应该开始使用C ++ 11完全取决于您。

答案 2 :(得分:2)

除了上述网站之外:此处还可以找到包含编译器支持c ++ 11功能的确切版本的不同编译器的比较:

http://wiki.apache.org/stdcxx/C%2B%2B0xCompilerSupport

列出的编制者:

HP aCC, EDG eccp, GCC, 英特尔C ++, MSVC, IBM XLC ++, Sun / Oracle C ++, C ++ Builder 2009/10, 数字火星C ++, 铿锵