您好,登錄后才能下訂單哦!
靜態成員(static)和非靜態成員的初始化有比較大的區別,所以這里單獨成章。
靜態成員初始化:
一,靜態變量:
#include <iostream> using namespace std; class Ctest { public: static int a; }; int Ctest::a = 12; int main() { cout << Ctest::a << endl; Ctest ct; cout << ct.a << endl; return 0; }
結果:
注意點:
①,靜態變量的初始化只能在類外進行,不能使用參數列表進行初始化。
②,其調用方案有2種:
1,類名作用域 : Ctest::a
2,對象調用: Ctest ct; ct.a
③,內外初始化需要加帶變量類型名 : int Ctest::a = 12 。需要將int加上。
二,靜態常量×××參數
#include <iostream> using namespace std; class Ctest { public: static int a; static const int b = 18; }; int Ctest::a = 12; int main() { cout << Ctest::b << endl; Ctest ct; cout << ct.b << endl; return 0; }
結果:
靜態方法:
#include <iostream> using namespace std; class Ctest { public: static int a; static const int b = 18; static void fun1() { cout << "靜態函數" << endl; } }; int Ctest::a = 12; int main() { Ctest::fun1(); Ctest ct; ct.fun1(); //cout << ct.b << endl; return 0; }
結果:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。