Cplusplus-cpp-static-members
提供:Dev Guides
C ++クラスの静的メンバー
静的メンバーは、クラスのすべてのオブジェクトによって共有されます。 他の初期化が存在しない場合、最初のオブジェクトが作成されると、すべての静的データはゼロに初期化されます。 クラス定義に入れることはできませんが、次の例のように、スコープ解決演算子 :: を使用して静的変数を再宣言することにより、クラスの外部で初期化できます。
私たちは、静的データメンバーの概念を理解するために、次の例を試してみましょう-
上記のコードをコンパイルして実行すると、次の結果が生成されます-
静的関数メンバー
関数メンバーを静的として宣言することにより、クラスの特定のオブジェクトから独立させます。 クラスのオブジェクトが存在せず、クラス名とスコープ解決演算子 :: のみを使用して static 関数にアクセスする場合でも、静的メンバー関数を呼び出すことができます。
静的メンバー関数は、クラス外から静的データメンバー、他の静的メンバー関数、およびその他の関数にのみアクセスできます。
静的メンバー関数にはクラススコープがあり、クラスの this ポインターにアクセスできません。 静的メンバー関数を使用して、クラスのオブジェクトが作成されているかどうかを判断できます。
静的関数メンバーの概念を理解するために、次の例を試してみましょう-
上記のコードをコンパイルして実行すると、次の結果が生成されます-