C/C++ 固有の解析

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

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

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

例 1: C++ 例外処理の問題

/**

 * uncaught exception test

 **/

void

f()

{

        throw 1.23;

}

int

main()

{

        f();

        return 0;

}

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

uncatched.cpp(7): warning #12228: Seems that thrown exception is not caught in the whole program

例 2: CTOR/CCTOR/DTOR/代入演算子の問題

class A {

public:

        explicit

        A(int data);

        A&

        operator =(const A& rhs);

private:

        int data_;

};

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

Warning : Class A: assignment operator is defined, but CCTOR and DTOR are not.