Windows下搞C++用什么编译器最好?

主流的就是那三个:Visual C++、gcc、Intel C/C++ Compiler。
自己都装上试一下就知道哪个好了。

一般,在Windows上,Intel C/C++ Compiler是配合Visual C++使用的,用相同的IDE。当然你也可以不用IDE。

gcc用MinGW的居多,也有用Cygwin的。MinGW也仅仅是一套编译器,需要再找个IDE配合,要么就是命令行编译。IDE我个人比较喜欢的是Code::Blocks。


我说说偶用过的编译器。
VC系列,一定用最新的,现在 2012 支持比较多的 C++11 特性,算是Windows 下比较全的了,而且通过右值引用等策略,STL库的效率大幅提高了。稳定性没的说,优化也做的不错,还看你要干什么。做一般的应用足够了,偶在VC2012下,用Qt510库做效率很高的, 做信号的话结合IPP,还是很有优势的。

Builder 系列,以前Borland 的,几经倒手到现在,觉得距离微软的差距越来越大了,编译出来的代码的效率比Visual Studio 的 native C++ 差了不少,自己曾经引以为豪的代码库,也逆水行舟,不进则退。

GCC系列,含MinGW 还有 cyg,也是要用最新的。还是Qt库,通吃!但是有一点要注意,在Windows 下很多商用软件没有提供gcc 的链接库,因而无法享受到很多功能。经我的测试,他在做硬判决维特比译码的计算效率比VC还高,当然,仅仅与应用场景有关。

Intel C++
这个偶只用过几次,觉得就是为了做算法而存在的。典型的应用是用这个编译出标准的动态链接库,而后用VC + Qt 去做上层。

LCC系列
LCC是一个很袖珍的编译器,似乎只能编译C代码。编译速度是最快的,代码也是很慢的。

偶的维特比译码测试,几个编译器的排名:

MinGW32 4.7 优于 VC2012 优于 BCB 优于 LCC
当然,只是特定应用。

其实,编译器只是一部分,关键还是采用的库是否得当。以信号处理领域来说,编程只是工具,很多专业人员的编程水平并不高。因此,要把工具、架构设计好,让大家各司其职。

1、界面以及辅助部分(数据库、网络、UI)用Qt,嵌入到 VC里去做。

2、尽量使用现成的并行化工具(OpenMP、Qt的Concurrent),避免自己写多线程。学院派的大拿会被多线程调试玩死。

3、算法部分,除非非常重视性能,不要使用与界面部分不同的编译器,那样调试起来很麻烦,出了问题会踢皮球。

4、少用COM,这个东西太复杂,博士大人们要不叶公好龙,要不嗤之以鼻。就用标准的C接口最稳定,写好文档就OK。如果需要复杂的接口,就用 Qt 的 plugin 体系,做的很快,很强大。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值