我无法找到足够的信息来决定使用哪个编译器来编译我的项目。在不同的计算机上有几个程序模拟一个过程。在Linux上,我使用GCC。一切都很好。我可以优化代码,它可以快速编译并使用不太多的内存。sjlj vs dwarf vs seh有什么区别?
我做我自己的基准与MSVC和GCC编译器。稍后会产生稍微更快的二进制文件(对于每个子体系结构)。虽然编译时间比MSVC多得多。
所以我决定用MinGW的。但是在MinGW中找不到有关异常处理方法及其实现的任何解释。我可以针对不同的操作系统和体系结构使用不同的发行版。
注意事项:
- 编译时间和内存是不是我的使用很重要。只有重要的是运行时优化。我需要我的程序足够快。慢速编译器是可以接受的。
- 操作系统:Microsoft Windows XP/7/8/Linux的
- 架构:英特尔酷睿i7 /酷睿2 /和一个非常古老的i686运行XP:P
我很惊讶,GCC可产生更快的代码比MSVC;在过去的几年里,事情一定会改变...... – trojanfoe 2013-03-27 21:52:56
@trojanfoe我曾多次被告知使用MSVC而不是MinGW。大家都认为msvc更快!我用一个简单的cpu-burst程序测试了MinGW 7.2和MSVC 2010.与corei7'-O3 -mtune = corei7' GCC比MSVC – 2013-03-27 21:57:27
快45%,在我自己的经验,有一步棋发生器(其中使用位棋盘),都MSVC和英特尔C++比GCC快10%,但这是2年前... – trojanfoe 2013-03-27 22:04:38