2

MinGWには、ScottMeyersのEffectiveC++によって提案された警告を表示する有効にすることができるこのオプションがあります。私はその本を持っておらず、簡単にコピーを入手することも、今それを読む時間もないので、私の質問は、これらの「マイヤーズの警告」とは正確には何ですか?

4

1 に答える 1

4

http://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html

-Weffc++(C++およびObjective-C++のみ)

ScottMeyersのEffectiveC++本からの次のスタイルガイドラインの違反について警告します。

  • 項目11:動的に割り当てられたメモリを持つクラスのコピーコンストラクタと代入演算子を定義します。
  • 項目12:コンストラクターでの代入よりも初期化を優先します。
  • 項目14:基本クラスでデストラクタを仮想化します。
  • アイテム15operator=への参照を返します*this
  • 項目23:オブジェクトを返す必要がある場合は、参照を返さないでください。

また、ScottMeyersのより効果的なC++本からの次のスタイルガイドラインの違反について警告します。

  • 項目6:インクリメント演算子とデクリメント演算子のプレフィックス形式とポストフィックス形式を区別します。
  • 項目7:、、、またはをオーバーロードしない&&||ください,

このオプションを選択するときは、標準ライブラリヘッダーがこれらのガイドラインのすべてに準拠しているわけではないことに注意してください。grep -vこれらの警告を除外するために使用します。

于 2011-11-17T20:56:29.547 に答える