4

私は現在、砂の土台の上に構築されたコードベースに取り組んでいます。

テスト済みと思われるライブラリには、「3 の規則」に違反する多数のクラスがあります。ほとんどの場合、非自明なデストラクタが宣言されていますが、コピー コンストラクタまたは代入演算子のいずれかが欠落しています。

クラスが 3 の規則に違反したときに警告するコンパイラ フラグ (gcc) または静的解析ツールはありますか?

現在、GCC バージョン 4.4 で Coverity を使用しています。

4

2 に答える 2

0

Parasoft (商用ツール) の C++test には、「一貫してコピーして破棄する」ことをカバーするルール (MRM-40) があり、役に立ちそうです。基本的に、コピー コンストラクター、コピー代入演算子、またはデストラクターのいずれかを定義する場合、他のいずれかまたは両方を定義する必要がある可能性があります。

詳細については、http://www.parasoft.com/jsp/products/cpptest.jspをご覧ください。

于 2013-05-08T20:03:04.487 に答える
0

コベリティは持っています。バージョン6.5を使用しています。チェッカー MISSING_COPY_OR_ASSIGN があります。

于 2013-05-24T04:43:10.743 に答える