C/C++ 固有の解析

スタティックの検証は、C/C++ ソースコードを解析して、プログラム中のさまざまなエラー、警告、問題点をチェックします。不適切なコード形式とオブジェクト指向設計ソリューション上の問題も検出します。

スタティックの検証は、次の問題を検出します。

次に、C/C++ 固有の解析例を示します。

例: コンストラクター/コピー・コンストラクター/デストラクター/代入演算子の問題

class C {

public:

    explicit C(int data) : _data(data) {}

    C(const C& rhs) { _data = rhs._data; }

    int data() { return _data; }

private:

    int _data;

};

スタティックの検証機能で次のメッセージが発行されます。

warning #12233: [SV] class "C": copy constructor is defined but assignment operator and destructor are not