在生产中使用GCC的C ++ 0x模式?

时间:2009-09-12 11:19:28

标签: c++ gcc c++11 mingw

是否有人在制作中使用GCC 4.4.0 C++0x支持?我正在考虑将它与最新的MinGW一起使用,但我不确定它是否足够成熟。

我对以下内容感兴趣:

  • TR1支持
  • 自动
  • 初始化列表

3 个答案:

答案 0 :(得分:4)

我没有在生产中使用GCC 4.4.0 C ++ 0x支持,但我在Boost Library http://www.boost.org/的帮助下使用了TR1功能。

Boost Library经过了充分测试,经常在生产环境中使用。如果您稍后转换为C ++ 0x标准,您唯一需要做的就是更改包含指令http://www.boost.org/doc/libs/1_40_0/doc/html/boost_tr1.html

在我看来,在标准完成之前,最好使用Boost Library。这是一种更加独立于编译器的方式。

答案 1 :(得分:4)

恕我直言,TR1支持和auto可以安全使用。在auto的情况下,它是标准中包含的第一个特征之一,并且是对语言的相对较小的改变。因此,使用它我没有问题。

我对使用initializer lists犹豫不决。在其他一些论坛上(例如comp.lang.c ++。moderated),有关于他们的行为的问题以及他们可能会更接近标准发布的可能性。

答案 2 :(得分:2)

MinGW根本不会使用'-std = c ++ 0x'进行编译。奇怪的是,' - std = gnu ++ 0x'有效。无论如何它看起来很麻烦,我不会指望它。