どれが一番C + +のコンパイラは何ですか?
できるC + +コンパイラがないので、良いバイナリを生成?現在の出力の安定性とパフォーマンスを考えることができます。そこに""C + +のコンパイラを使用する最高のようなものですか?れていない場合、どのような強力なポイントであり、もちろん、それほど(既知の強力なバグと問題)点、よく知られているコンパイラ(+ +は、インテルC + +コンパイラは、Visual C + +などgの)。 そろケースをコンパイラがミッションクリティカルなソフトウェアの障害の結果不適切な出力を生成文書? |
9 Replies
1)
G + +で最も人気のあると思われる。これは無料で、かなり良い携帯です。 Windowsへの移植は、(MinGWを)実際に私はそれを(多分1年前)最後に使用した時間を日付だった。 インテルC + +コンパイラは)プロセッサ生成さ1と見なさとして最速のコードを(コードをただし、これはSIMD型のそれが生成する悪いことだ知られているAMDののあなたは上の自由にcanを使用GNU / Linuxのconditionsでかなりrestrictive。 VC + +では、しばしば最高のC + +のIDEとして、見なされから私はコンパイラを聞く非常に良いもある。これはフリー(自由ビール)、唯一のコースは、Windowsで利用可能です。 私は、G + +で他のOS用のWindows上でVC + +をお勧めします。私の無料版をお試しください+自分、それはお金の価値があるかどうかを検索する。
はい、おそらく、私は言わせれそれはおそらく、プログラマの責任だ、ほとんどの時間。たとえば、誰かがどのように浮動小数点演算の作品は、簡単に信頼性のコードを記述すると知っているしていない場合。良いプログラマはまた、どのC + +の標準で動作するように、何が保証され知っておく必要はありません。彼女はまた、どのコンパイラの制限があり、どのようにうまくは、標準を実装し、どのように積極的にそれが最適化などの知っている必要があります。 |
2)
私は問題は、そのコンパイルされませんが、コンパイラ内部セグメンテーションフォールトを生成するようなコードをCygwinを使っていた。 MinGWで同じコードで動作します。 [レポートの編集]は、コンパイラがここに: 私はもうエラーが生成されたソースコードを持っていない、私は報告書を提出することはできませんので。 [は/編集] |
3)
まず第一には、どのプラットフォームは、通常使用している、使用するコンパイラを決定します。 第二に、堅牢性とパフォーマンスにご質問。私はあなたの堅牢性の意味かわからない。しかし、もしあなたが意味するコンパイルされたバイナリの正しさは、私がいる限り、任意のあなたは"堅牢性"の問題に実行するつもりはない記載コンパイラの安定版を使用していると言わざるを得ないと思います。すべてて、非常に成熟し無数の現実のプロジェクトで使用されているこれらのコンパイラ。だから私は堅牢まったく心配はない。 、それは難しいごとに1つのコンパイラは、理論的に異なるパフォーマンスをもたらす可能性が異なる最適化の技術があるので、答えているのパフォーマンスについて。私は誰かが私よりは、この情報を伝えることができる知識豊富なことを望む。 現実には、あなたが上記のコンパイラは、すべての高品質と成熟したコンパイラ、質問を求める必要がありますが、コンパイラは、より堅牢なですが、:されていません与えられた
最適化手法の問題は未解決の問題がされ、それがで非自明な問題である。私はいくつかはそれにいくつかの光を当てることを願う。 |
4)
あなたは何を使用しているプラットフォームですか?たとえば、Visual C + +の使用の場合にLinux上でされません。 実際には、3つの場合は言及されます私が選んだが3つも、これらの理由がある。 のgcc / g + +:オープンソース、証明、多くのLinuxおよびUNIX上での共同長年の経験でシステムを洗練された。それほど強力な点は、単にそれは、スタンドアロンのコマンドラインツールです。あなたは、することができますまたは多分見つけるには、独自のIDEのスタイルの環境を、それは""そのように付属していませんので、話をする。 のVisual C + +は:マイクロソフトでは、コードサンプル、およびドキュメント(MSDNの負荷)は、自然のWindows APIにフックをサポート。それほど強力な点は、それがない、特にない、まあ、"視覚"です。あなたは、Visual Basic(言う)には、Visual C + +はまったく同じように動作しません見つけることが使用している場合。 インテルC + +コンパイラは:残念ながら、私はインテルのコンパイラでの経験がないが、私はリードには、並列処理をサポートし、数値ライブラリを高精度を持って信じるようにしています。 もう1つのかも言及する価値がボーランドのC + + Builderは、です。それは豊富な迅速なアプリケーション開発環境されてプラスを取得アドオンDelphiのVCLのとの互換性のコントロールを経由して、しかし、逆のC + + Builderの開発コードを簡単に他のC + +コンパイラには移植できませんです。 |
5)
コメント以来、あなたは"システムの一部の商用航空機として言及"、それは。スペースをできる製品重要になる価値がある安全性その他を見越すのかによって提供されるコンパイラ企業が実際に維持する証明には、スペース、 Green Hills Software社1 です。風が川は別です。 |
6)
センス場合コンピューティングのパフォーマンスは、ハイの出力コードのしているの話をハイパフォーマンスには、5月興味があるにもポートランドグループのコンパイラとIBMの契約コンパイラ。 |
7)
最適化コンパイラのポイントは、それが機能的に元に相当する最適化されたプログラムを生成する必要です。機能的に同等コースの観測効果とは関係ありません。状態は自然と同じではない。私は、あなたはさまざまな状況で、特定の問題を緩和することとしますが、誤訳を生成できる任意のコンパイラが悪い、私の意見では、です。主流コンパイラの利点の1つは、バグが速い固定されている。 パフォーマンスに関しては、コンパイラは通常、プラットフォーム固有のものの最適化の2種類を:/構文木/中間表現のソースレベルでのプラットフォームに依存しない最適化()です。 私は最高のプラットフォームに依存しない最適化は、おそらく、既存のコンパイラ(おそらく異なる最適化の様々な学術変更されていると推測ずつ)。これらの最適化は、最終的に認識され、最終的にトリクル主流に。 プラットフォーム固有の最適化として、私は、企業はこれらのplatformsことが最良の最適化を(、internalインテルのコンパイラeg)have、but思うtheyはyet一般- availabilityコンパイラinto統合されず、eventually as well downトリクル。 |
8)
コンパイラ+ +の詳細マルチプラットフォームのC -で1つ加えバスティアンLà© onard答え:そこにあるコモー 。これは、最も標準に準拠C + +のコンパイラです。最終バージョンは、xのコア言語のサポートのC + +0しています。 |
9)
http://www.compilers.net/Dir/Free/Compilers/CCpp.htm マイクロソフトでは、良いフリーのコンパイラを持ってあなたがUNIXまたは少し良いことを行いますMac上で作業している場合。 ボーランドは、同様に良いフリーのコンパイラがあります。 私はいくつかの無料のコンパイラを試しており、ほとんどのはDev - C + +で快適に感じる。総パッケージには、比較的サイズの小さいWindowsおよびLinuxのフレーバーがある。私にとっては、C + +言語の限界をテストするために最適です。これは、高速コンパイルし、実験が容易になります。 私はコンパイラをお勧めしますあなたがこの+ソフトウェアと呼ばれるデジタル火星のC / C +、あなたからそれを得ることができるhttp://www.brothersoft.com/digital-mars- Ã ¢ â、¬ Âは表示|無料のC / C + +のコンパイラですがWin32では、Win16の、DOS32とDOS環境。 |