静的メンバ
// klass_static.cpp #include <iostream> class klass_static { public: static int count; klass_static(); }; // 静的メンバの初期化はクラス定義の外で行う // そのときにはスコープ定義演算子 :: でアクセスする int klass_static::count = 0; klass_static::klass_static() { // こんな初期化はできない // count = 0; // 当然こんな初期化もできない // klass_static::count = 0; // クラス内でアクセスするときはスコープ定義演算子 :: はいらない count++; // でもつけても良いっぽい //klass_static::count++; std::cout << count << std::endl; } int main() { klass_static *k1, *k2, *k3; k1 = new klass_static(); k2 = new klass_static(); k3 = new klass_static(); // もちろんクラスの外からでも静的にアクセスできる std::cout << klass_static::count << std::endl; return 0; }
1 2 3 3
ここが参考になりましとさ.