在全域性變數前加上static關鍵字,全域性變數就定義成了乙個全域性靜態變數。
在區域性靜態變數之前加上static,區域性變數就成為乙個區域性靜態變數。
在函式返回型別前加static,函式就定義為靜態函式。
在類中,靜態成員可以實現多個物件之間的資料共享,並且使用靜態資料成員還不會破壞隱藏的原則,即保證了安全性。因此,靜態成員類是所有類的共享成員,而不是某個物件的成員。對多個物件來說,靜態資料成員只儲存一處,供所有物件使用。
靜態成員函式和靜態資料成員一樣,它們都屬於類的靜態成員,他們都不是物件成員。因此,對靜態成員的引用不需要用物件名。
在靜態成員函式的視線中不能直接引用類中說明的非靜態成員,可以引用類中宣告的靜態成員(因為靜態成員屬於類成員而不是物件成員,不需要例項化)。如果靜態成員函式需要獲取非靜態成員的資訊,則可以通過傳參(最好是引用或者是指標實現,拷貝傳參影響效率)。
C static關鍵字作用
1.static修飾全域性變數 當同時編譯多個檔案時,所有未加static字首的全域性變數和函式都具有全域性可見性,其它的原始檔也能訪問。未加static的全域性變數,在符號表中是global符號,其他目標檔案可見,這樣的符號是要參與符號解析的。加了static之後,是local符號,其他目標檔案不...
C static關鍵字的作用
在 c語言中,static 的字面意思很容易把我們匯入歧途,其實它的作用有三條。1 先來介紹它的第一條也是最重要的一條 隱藏。當我們同時編譯多個檔案時,所有未加 static 字首的全域性變數和函式都具有全域性可見性。為理解這句話,我舉例來說明。我們要同時編譯兩個原始檔,乙個是 a.c,另乙個是 m...
C static關鍵字作用總結
c 中static關鍵字作用總結 1.先來介紹它的第一條也是最重要的一條 隱藏。static函式,static變數均可 當同時編譯多個檔案時,所有未加static字首的全域性變數和函式都具有全域性可見性。舉例來說明。同時編譯兩個原始檔,乙個是a.c,另乙個是main.c。複製 char a a gl...