C++プログラムをコンパイルするときにエラーメッセージに直面することがありますが、解読が簡単なものもあれば、非常に長いのでかなり難しいものもあります。通常、Pythonでは、エラーメッセージの最後の文を調べることから始めます。 C++で長いコンパイラのエラーメッセージを調べるとき、どうすればよいでしょうか?C++プログラムのコンパイル時にエラーメッセージを調べ始める場所は?
答えて
おそらくスタンダードライブラリのテンプレートを誤って使用したことによるエラーがあなたを悩ませていると思います。これにはいくつかのアプローチがありますが、私のコードに関連する(長い)エラーレポートの一部を見つけ、いくつかのSTLヘッダー(たとえば、<vector>
)ではないことがわかりました。次に、そこからエラーを推測し、「タイプに従う」と報告されている他のエラーに往復することができます。
そこにはいくつかの「エラーパーサ」もありますが、それらはコンパイラとそのバージョンに依存しますが、それらが有用であると感じる人もいます。 「STLFilt」は1つですが、私はそれを使ったことがないので、どれくらいいいかは分かりません。
また、CLang
でコンパイルしようとすると、GCCが最近遅れを取っていますが、ほとんどのコンパイラよりもエラー報告が優れています。それはGCCとCL(Microsoft Visual C/C++コンパイラ)のための "ドロップイン"置換を持っています。
最初のエラーから開始してください。それらは通常最も関連しています。後のエラーは、最初のエラーによって引き起こされることが多いため、最初のエラーを取り除くと、通常、次のエラーの数が減ります。すすぎ:すべてが修正されるまで繰り返します。
複数の異なるコンパイラでコードをコンパイルすると、さまざまな方法でエラーが表示され、いくつかのエラーが他のコンパイラよりも優れた(より理解できる)エラーレポートが生成されるため便利です。異なる方法で記述された問題を理解すると、(個人的にはclang 3.8、gcc 6.1、VS2015ですべてを構築し、さまざまなエラー出力を助けるだけでなく、さまざまなコンパイラでさまざまなバグを追加することができます。
- 1. C/C++でコンパイル時のコア数を調べる
- 2. C/C++プログラムの実行時間を調べる
- 3. 春を始める場所は?
- 4. Jrubyでレールを始める場所は?
- 5. Cプログラム:長さはコンパイル時
- 6. Haskellのコンパイル時に別の場所にコードを含めるには?
- 7. Javaを始める。コンパイル時のエラー
- 8. C++コンパイルのエラーメッセージ
- 9. コンパイル時にすべての.cソースファイルに#defineを含める
- 10. Cプログラム - コンパイル時に2つの列挙型が同期しているかどうかを調べる
- 11. javaw.exeのインストール場所を調べるには?
- 12. 私のC++プログラムにコメントし始めた時にエラーが出た
- 13. このConcurrentModificationExceptionがクラッシュする場所を調べる方法は?
- 14. Pythonのインクルードディレクトリの場所を調べる方法は?
- 15. Opencv、コンパイル時にピクセルのタイプを調べる
- 16. コンパイル時にstd :: bitsetのサイズを調べる方法
- 17. 私はCプログラムをコンパイルする場合、スクリプトは通常、Cコード
- 18. Sharepoint SiteCollectionの平均応答時間をプログラム的にC#で調べる方法
- 19. カスタム検証エラーメッセージの場所
- 20. コンパイル時のC++プログラムの巨大なデータ
- 21. C++プログラムのコンパイルは
- 22. NodeJSの開始場所は?
- 23. 時には場所
- 24. Objective-Cプログラムのコードカバレッジを調べる方法は?
- 25. エラーメッセージ "#<場所:ActiveRecord_Relation:0x007f8d79d3de30 >"
- 26. ハードディスク上のどの場所にプログラム/ファイルがインストールされているかを調べる
- 27. 関数がある場所を調べる
- 28. 変数が初期化される場所を調べる
- 29. C++コンパイルでライブラリの登録名を調べる方法
- 30. 場所/場所にGoogleマップのアピで平面図があるかどうかを調べる
エラーメッセージの形式によって異なりますが、それは使用しているコンパイラによって異なります。 –
最初から。警告を含む – mvidelgauz
コンパイル時間は実際には要因ではないと仮定し、最初のエラーを修正してから再コンパイルします。これは、最初のエラーのためにさらに多くのエラーが発生するのを助けます。 – NathanOliver