一、靜態成員變數
1)關鍵字 static 可以用於說明乙個類的成員,
靜態成員提供了乙個同類物件的共享機制
2)把乙個類的成員說明為 static 時,這個類無論有多少個物件被建立,這些物件共享這個 static 成員
3)靜態成員區域性於類,它不是物件成員,在類的外部進行初始化
二、靜態成員函式
1)靜態成員函式數冠以關鍵字static
2)靜態成員函式提供不依賴於類資料結構的共同操作,它沒有this指標
3)在類外呼叫靜態成員函式用 「類名 :: 」作限定詞,或通過物件呼叫
4)疑難問題:靜態成員函式中,不能使用普通變數,只能使用靜態成員變數
三、函式例項
#include class test11
void print()
// 靜態成員函式只能使用靜態成員變數
static void printa()
public:
// 靜態成員變數,屬於類,不屬於某個物件
// 是所有物件共享的,靜態是在資料區分配,只有乙個備份
// 靜態變數不能由某個物件進行初始化
// 靜態變數必須在類的外部重新定義並且初始化
static int sm_a;
int m_b;
};// 重新定義類的靜態變數並且初始化
int test11::sm_a = 100;
int main11_1()
C 靜態成員變數和靜態成員函式
資料成員可以分靜態變數 非靜態變數兩種.靜態成員 靜態類中的成員加入static修飾符,即是靜態成員.可以直接使用類名 靜態成員名訪問此靜態成員,因為靜態成員存在於記憶體,非靜態成員需要例項化才會分配記憶體,所以靜態成員不能訪問非靜態的成員.因為靜態成員存在於記憶體,所以非靜態成員可以直接訪問類中靜...
C 靜態成員變數和靜態成員函式
資料成員可以分靜態變數 非靜態變數兩種.靜態成員 靜態類中的成員加入static修飾符,即是靜態成員.可以直接使用類名 靜態成員名訪問此靜態成員,因為靜態成員存在於記憶體,非靜態成員需要例項化才會分配記憶體,所以靜態成員不能訪問非靜態的成員.因為靜態成員存在於記憶體,所以非靜態成員可以直接訪問類中靜...
C 靜態成員變數和靜態成員函式
靜態成員變數和靜態資料成員並不屬於某乙個類物件,而是整個類,為所有物件共有,下面介紹 靜態成員變數和靜態資料成員的一些特徵 class a int tmain int argc,tchar argv 結果如下 1 class a const char a c b 可以通過作用域操作符,類的物件,引用...