快速业务通道

一个C++编译器的不完全列表(翻译版)

作者 佚名技术 来源 程序设计 浏览 发布时间 2012-06-29

经C++创始人Bjarne Stroustrup博士同意,我翻译了这篇文章并贴在这里,供选择编译器的朋友参考。欢迎转载,转载请注明出处。

英文版原文在http://www.research.att.com/~bs/compilers.html

我(Bjarne Stroustrup) 常常被提问建议的C++编译器,但是我不做建议,因为那样看起来很像站在商战的某一边。况且,我并不了解每一个C++编译器,仅仅知道C++编译器多如牛毛而已。一般而言,我使用半打(6个)编译器,但这充其量也仅仅不过是表面文章而已。

我建议人们选用一个编译器时认真考虑它跟标准的一致程度。如果可能,避免使用任何不太符合ISO标准或者不支持标准库某项实现的编译器。所有主要C++编译器供应商的最新版本都做得不错。

如果你是新手,不知道怎么识别一个编译器是否合适,试试编译下面这个程序:

#include<iostream>
#include<string>
using namespace std;

int main()
{
string s;
cout << "Please enter your first name followed by a newline\n";
cin >> s;
cout << "Hello, " << s << ''\n'';
return 0; // 该返回语句可以不要
}

如果一个编译器不能处理这么简单的程序,那它不适合用来学习标准C++.(如果你剪切和粘贴以上代码,小心#include 指令后的“小于号”)。

尽管现在这些细节问题早已经陈旧,这里有一篇很长的文章论述一致性问题和boost.org''的编译器状态页。一致性仅仅是编译器质量的一项指标(产生代码质量、出错信息、编译速度、跟开发工具集成、支持程度、向后兼容这些都是其他衡量指标),不过一致性很重要的一项。使用某供应商的语言扩展特性和非标准特性限制了你的代码可移植性而且妨碍你选择一个新供应商的产品。

大多数编译器内嵌在软件开发工具框架和库里面。这些框架、环境和库对你可能非常有用,但是记住使用它们会把你锁定到单一供应商,而且一些应用存在严重的运行性能问题。

当在网上寻找C++的时候,你会发现很多信息“隐藏”在各自产品下面。事实上,我用google.com寻找C++编译器比直接联系C++编译器供应商更方便。在此,忽略市场商标,我列出很多C++编译器的提供者。

一些编译器可以免费下载(尝试商业应用前要看看他们的条件/许可证):

·Apple C++. OS X开发工具CD上也有。

http://developer.apple.com/tools/macosxtools.html

·Bloodshed Dev-C++. 一个基于GCC(Mingw)的IDE.

http://www.bloodshed.net/devcpp.html

·Borland C++

http://www.borland.com/downloads/download_cbuilder.html

·Cygwin (GNU C++)

http://www.cygwin.com/

·Digital Mars C++

http://www.digitalmars.com/

·MINGW - "Minimalist GNU for Windows". 另外一个GCC for Windows版本,包含了一个免费的(非GPL)w32api.

http://www.mingw.org/

·DJ Delorie''s C++ development system for DOS/Windows (GNU C++)

http://www.delorie.com/djgpp

·GNU CC source

http://www.gnu.org/software/gcc/gcc.html

·IBM C++ 用于IBM power, System Z, Bluegene, and Cell.

http://www-949.ibm.com/software/rational/cafe/community/ccpp

·Intel C++ for linux

http://www.intel.com/software/products/compilers/clin/noncom.htm

·The LLVM Compiler Infrastructure (基于GCC)。

http://llvm.cs.uiuc.edu/

·Microsoft Visual C++ 2008 Express edition.

http://www.microsoft.com/express/vc

·Sun Studio.

http://developers.sun.com/sunstudio

一些编译器需要支付费用(有些允许试用期内免费下载):

&mid

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号