Is there a compiler that has good support for the new C++0x?
是否有一个编译器能够很好地支持新的C ++ 0x?
I use GCC but unfortunately the current version 4.4 has a poor support for the new features.
我使用GCC,但遗憾的是当前版本4.4对新功能的支持不足。
9 个解决方案
#1
The only compiler that has an implementation of concepts is conceptgcc (and even that is incomplete - but it is good enough to get a good feel for the feature).
Visual C++ 2010 Beta has some useful C++0x support - you can play with lambdas, rvalue references, auto, decltype.
Comeau C++ or the EDG based compilers are surprisingly not as advanced I would have expected them to be in their implementation of C++0x.
GCC 4.4 (variadic templates, initializer lists, inline namespaces, autor, decltype) probably has the most features implemented out of any of the other compilers, but is lagging in concepts and lambdas (separate branch development is ongoing).
唯一具有概念实现的编译器是conceptgcc(即使这是不完整的 - 但它足以让对该功能有一个良好的感觉)。 Visual C ++ 2010 Beta有一些有用的C ++ 0x支持 - 你可以使用lambdas,rvalue references,auto,decltype。 Comeau C ++或基于EDG的编译器出人意料地没有像我预期的那样在他们的C ++ 0x实现中。 GCC 4.4(可变参数模板,初始化列表,内联命名空间,autor,decltype)可能具有从任何其他编译器实现的最多功能,但是在概念和lambda中滞后(单独的分支开发正在进行中)。
#2
The Apache Standard C++ Library project maintains a wiki page of major compilers' C++0x support.
Apache Standard C ++ Library项目维护主要编译器的C ++ 0x支持的wiki页面。
Here are links to the vendors' pages describing their C++0x support:
以下是供应商页面的链接,描述了他们的C ++ 0x支持:
- GCC
- CodeGear C++Builder 2009
- Intel C++ Compiler
- Visual C++ 2009 and 2010 - see here, here, or here
- Comeau C++
CodeGear C ++ Builder 2009
英特尔C ++编译器
Visual C ++ 2009和2010 - 请看这里,这里或这里
#3
I'm afraid gcc is probably the best you're going to get at this stage.
我担心gcc可能是你在这个阶段最好的。
There's a list of features and supported compilers here:
这里有一系列功能和支持的编译器:
#4
The current beta version of the Comeau compiler seems to have good C++0x support.
Comeau编译器的当前测试版似乎具有良好的C ++ 0x支持。
#5
GCC 4.4 does at least have some of the cool features (auto
, variadic templates, rvalue references, etc.). There are also development branches for concepts and lambdas.
GCC 4.4至少具有一些很酷的功能(自动,可变参数模板,右值参考等)。概念和lambda也有开发分支。
See C++0x support in GCC.
请参阅GCC中的C ++ 0x支持。
#6
Scott Meyers has a nice and detailed comparison here:
Scott Meyers在这里有一个很好的和详细的比较:
#7
GCC 4.6, released 3/25/11, supports most of the non-concurrency-related features of C++0x. Now that C++0x is no longer in flux compiler support may progress a little more quickly.
11月25日发布的GCC 4.6支持C ++ 0x的大多数非并发相关功能。既然C ++ 0x不再处于不稳定状态,编译器支持可能会更快地进行。
#8
C++0x is still not ready, so don't expect to have it supported atm. GCC 4.4 and Visual C++ 2010 are good candidates (they have some of the most anticipated new feautres like lambdas and auto) that get you started, but the standard isn't finished yet.
C ++ 0x仍然没有准备好,所以不要指望它支持atm。 GCC 4.4和Visual C ++ 2010是很好的候选者(他们有一些最令人期待的新功能,如lambdas和auto),可以帮助你入门,但标准还没有完成。
#9
I recommend intel compiler if your on linux/unix it's got better support than GCC and produces faster/smaller binaries (I normally get a free 10% performance boost using it)
我推荐使用intel编译器,如果你的linux / unix它比GCC有更好的支持,并产生更快/更小的二进制文件(我通常可以使用它获得10%的免费性能提升)
#1
The only compiler that has an implementation of concepts is conceptgcc (and even that is incomplete - but it is good enough to get a good feel for the feature).
Visual C++ 2010 Beta has some useful C++0x support - you can play with lambdas, rvalue references, auto, decltype.
Comeau C++ or the EDG based compilers are surprisingly not as advanced I would have expected them to be in their implementation of C++0x.
GCC 4.4 (variadic templates, initializer lists, inline namespaces, autor, decltype) probably has the most features implemented out of any of the other compilers, but is lagging in concepts and lambdas (separate branch development is ongoing).
唯一具有概念实现的编译器是conceptgcc(即使这是不完整的 - 但它足以让对该功能有一个良好的感觉)。 Visual C ++ 2010 Beta有一些有用的C ++ 0x支持 - 你可以使用lambdas,rvalue references,auto,decltype。 Comeau C ++或基于EDG的编译器出人意料地没有像我预期的那样在他们的C ++ 0x实现中。 GCC 4.4(可变参数模板,初始化列表,内联命名空间,autor,decltype)可能具有从任何其他编译器实现的最多功能,但是在概念和lambda中滞后(单独的分支开发正在进行中)。
#2
The Apache Standard C++ Library project maintains a wiki page of major compilers' C++0x support.
Apache Standard C ++ Library项目维护主要编译器的C ++ 0x支持的wiki页面。
Here are links to the vendors' pages describing their C++0x support:
以下是供应商页面的链接,描述了他们的C ++ 0x支持:
- GCC
- CodeGear C++Builder 2009
- Intel C++ Compiler
- Visual C++ 2009 and 2010 - see here, here, or here
- Comeau C++
CodeGear C ++ Builder 2009
英特尔C ++编译器
Visual C ++ 2009和2010 - 请看这里,这里或这里
#3
I'm afraid gcc is probably the best you're going to get at this stage.
我担心gcc可能是你在这个阶段最好的。
There's a list of features and supported compilers here:
这里有一系列功能和支持的编译器:
#4
The current beta version of the Comeau compiler seems to have good C++0x support.
Comeau编译器的当前测试版似乎具有良好的C ++ 0x支持。
#5
GCC 4.4 does at least have some of the cool features (auto
, variadic templates, rvalue references, etc.). There are also development branches for concepts and lambdas.
GCC 4.4至少具有一些很酷的功能(自动,可变参数模板,右值参考等)。概念和lambda也有开发分支。
See C++0x support in GCC.
请参阅GCC中的C ++ 0x支持。
#6
Scott Meyers has a nice and detailed comparison here:
Scott Meyers在这里有一个很好的和详细的比较:
#7
GCC 4.6, released 3/25/11, supports most of the non-concurrency-related features of C++0x. Now that C++0x is no longer in flux compiler support may progress a little more quickly.
11月25日发布的GCC 4.6支持C ++ 0x的大多数非并发相关功能。既然C ++ 0x不再处于不稳定状态,编译器支持可能会更快地进行。
#8
C++0x is still not ready, so don't expect to have it supported atm. GCC 4.4 and Visual C++ 2010 are good candidates (they have some of the most anticipated new feautres like lambdas and auto) that get you started, but the standard isn't finished yet.
C ++ 0x仍然没有准备好,所以不要指望它支持atm。 GCC 4.4和Visual C ++ 2010是很好的候选者(他们有一些最令人期待的新功能,如lambdas和auto),可以帮助你入门,但标准还没有完成。
#9
I recommend intel compiler if your on linux/unix it's got better support than GCC and produces faster/smaller binaries (I normally get a free 10% performance boost using it)
我推荐使用intel编译器,如果你的linux / unix它比GCC有更好的支持,并产生更快/更小的二进制文件(我通常可以使用它获得10%的免费性能提升)