Home > 2006-06 / CからC++へ > This Entry [com : 0][Tb : 0]
ここでは、123という初期化子を与えましたが、(const修飾子がなければ)静的データメンバの初期化子は省略することができます。この辺りは、通常のオブジェクトの定義と同じです。struct A
{
static int x;
};
int A::x = 123;
のように、クラスの中で直接、初期化子を指定して、定義を行うことができます。ただし、規格準拠度の低い古いコンパイラでは、こうした記述ができないものも存在しますので、その場合は通常通り、クラスの外で定義を行わなければなりません。struct A
{
static const int x = 123;
};
http://cppemb.blog17.fc2.com/tb.php/79-4d5c0a62
Comment