C++中的static成員、static const成員和const成員的初始化

鍾超發表於2011-04-19

(1)static成員要在類外初始化:這樣的成員是屬於整個類的,但非常量,所以可以類外初始化,也可以用靜態函式初始化。


class A { private: static int a; }; int A::a = 0;

(2)const static成員可在類內初始化:這樣的成員是屬於整個類的常量。


class B { private: const static int b = 3; };


(3)const成員要在建構函式初始化表中初始化:這樣的成員是每個物件中都有的,只不過是常量,所以要在每次構造物件時初始化。


class C { public: const int SIZE; C(int size) { // codes } }; C::C(int size), SIZE(size) { // codes }

相關文章