中文第一计算机图形学社区OpenGPU 版权所有2007-2018

 找回密码
 注册

扫一扫,访问微社区

搜索
查看: 4913|回复: 4

多种编译器对C++11的支持

[复制链接]
发表于 2013-6-21 13:11:04 | 显示全部楼层 |阅读模式
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2522

为了方便维护,各种编译器对C++11的支持比较已经挪到了这里。同时,还加入了ICC 14.0, GCC 4.8.1和Clang 3.3。
发表于 2013-6-21 16:07:05 | 显示全部楼层
本帖最后由 kruglinski 于 2013-6-21 16:12 编辑

看了一下,内容好像不对的吧!除了垃圾回收gcc 4.8.1几乎实现了全部c++11标准特性,另外clang还处在玩具阶段,建议大家先不要把项目转到这个工具上,稳定性比gcc差不少。我用的是google ndk中带的版本,编译一些大型的复杂项时直接崩溃(google已经修正了不少bug还是这样)。

目前看来最佳的选择是VS 2012和GCC 4.8.1,工具要么熟悉好用,要么稳定强大,两头不占优的就不合适了。

http://gcc.gnu.org/gcc-4.8/cxx0x_status.html
PS:
我在对自己写的一段加密算法(商密SM4算法)做性能分析和优化的时候,发现gcc 4.6.4生成的代码运行速度最快,4.7.3次之,4.8.1最慢。所以目前我工作中不用太新的C++特性,然后用的gcc 4.6.4。
发表于 2013-6-21 18:49:45 | 显示全部楼层
kruglinski 发表于 2013-6-21 16:07
看了一下,内容好像不对的吧!除了垃圾回收gcc 4.8.1几乎实现了全部c++11标准特性,另外clang还处在玩具阶 ...

此观点正确,最新GCC 4.8.1除了“Minimal support for garbage collection and reachability-based leak detection”,基本上其他的C++11的特性都已经实现了;MSVC对C++11的支持比较差,至今还有很多未实现。
头像被屏蔽
发表于 2013-6-21 20:37:55 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| 发表于 2013-6-24 13:14:08 | 显示全部楼层
kruglinski 发表于 2013-6-21 16:07
看了一下,内容好像不对的吧!除了垃圾回收gcc 4.8.1几乎实现了全部c++11标准特性,另外clang还处在玩具阶 ...

核心功能的部分没错,并行和C99的几栏有误。甚至gcc自己的文档之间也有冲突的。我现在根据每个版本本身的Status of Experimental C++11 Support文档做了修改。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|小黑屋|Archiver|手机版|中文第一计算机图形学社区OpenGPU

GMT+8, 2018-5-24 02:46 , Processed in 0.201147 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表