与gcc相比,comeau编译器值得吗?

时间:2009-07-17 05:49:26

标签: c++ c gcc compiler-construction comeau

到目前为止,我一直在使用gcc,g ++进行C,C ++应用程序开发,并发现它非常棒。但是浏览Stack Overflow我发现许多成员声称Comeau编译器中的错误报告比任何其他编译器都要多得多。这是真的?我没有投资任何编译器的商业版本。当gcc,g ++正在做这个伎俩时,真的值得花钱购买C / C ++编译器的商业版本吗?

6 个答案:

答案 0 :(得分:8)

Comeau编译器的杀手级功能是它的一致性(包括C ++ 03!)和出色的错误报告。

还有一种在线方式可以尝试:http://www.comeaucomputing.com/tryitout/

如果这些功能对您有用,那么Comeau编译器绝对值得。

向Comeau编译器致敬!

答案 1 :(得分:8)

我编写C ++的经验是,使用多个编译器编译代码是在代码中查找奇怪角落的好方法。在我们的例子中,我们使用了gcc,Apple gcc和Visual Studio编译器cl(免费)。在Windows上,我更喜欢cl编译器,因为它编译速度更快(对我们来说快了大约五倍)并且它产生更好的代码(我上次检查时快了大约30%)。哪个编译器生成最快的代码总是依赖于应用程序。在我们的特殊情况下,英特尔编译器在生成快速代码方面并不擅长与流行的观点相悖,因此没有真正的动机来使用它。

如果我们有钱可以花钱,那么使用Comeau进行编译将有助于进一步检查标准的一致性。除此之外,我对我们使用的编译器感到满意。

答案 2 :(得分:5)

Comeau的编译器有三个主要用途:

  • 定位仅具有C编译器的平台

  • 拥有一个具有良好一致性声誉和良好错误消息的附加编译器

  • 尝试仅使用它的功能(例如,多年前我尝试使用导出的模板购买它)

请注意,调试不是其中一种用法。它生成C代码,然后由C编译器编译。它使用#line指令,以便您能够在代码中一步一步地进行,但是为了做更多,您将遇到与使用C作为中间语言调试任何语言时相同的问题:调试器不了解约定起始语言。

答案 3 :(得分:2)

如果您对gcc工具感到满意,请坚持使用它们。不要修复没有损坏的东西。它们每天被很多的人使用,而且它们当然相当不错。

也就是说,gcc已经criticized因为“每次发布都会变慢并创建糟糕的代码”。不知道“疯狂”,但我们一直在编写具有硬件供应商特定(例如英特尔)编译器的时间关键部分。与gcc实现的相比,它们确实在某些情况下创建了更快的代码。但通常差异并不重要。

答案 4 :(得分:1)

我倾向于说不,g ++是一个很棒的编译器,有一个庞大的社区支持它,除非你想要它提供的支持,否则没有任何需要切换到商业编译器,除非你是一个你可能没有的大型开发人员。在Windows上使用g ++和VS Express,确实没有必要为编译器提供资金。更好的地方花你的钱/时间!

答案 5 :(得分:0)

我相信Comeau Release版本非常稳定。当您购买商业C / C ++编译器时,您将主要为特定的功能付费。您应该决定是否需要这些功能。

如果您没有特殊要求,GNU C / C ++编译器是一个很好的选择。