靜態成員變數和靜態成員函式

2021-08-21 18:40:01 字數 718 閱讀 3030

資料成員可以分靜態變數、非靜態變數兩種:

靜態成員:

靜態類中的成員加入static修飾符,即是靜態成員.

可以直接使用類名+靜態成員名訪問此靜態成員,因為靜態成員存在於記憶體,非靜態成員需要例項化才會分配記憶體,所以靜態成員不

能訪問非靜態的成員..因為靜態成員存在於記憶體,所以非靜態成員可以直接訪問類中靜態的成員

在c++中,靜態成員是屬於整個類的而不是某個物件,靜態成員變數只儲存乙份供所有物件共用。所以在所有物件中都可以共享

它。使用靜態成員變數實現多個物件之間的資料共享不會破壞隱藏的原則,保證了安全性還可以節省記憶體。

靜態成員可以通過雙冒號來使用即《類名》::《靜態成員名》

class point 

static void output()

}; int main(void)

point::init();出錯

point pt; 

pt.output();

可以。

類的物件可以使用靜態成員函式和非靜態成員函式

注意:靜態成員函式中不能引用非靜態成員,因為靜態成員函式在類的定義時就已分配好空間。

靜態成員變數 和 靜態成員函式

資料成員可以分靜態變數 非靜態變數兩種.靜態成員 靜態類中的成員加入static修飾符,即是靜態成員.可以直接使用類名 靜態成員名訪問此靜態成員,因為靜態成員存在於記憶體,非靜態成員需要例項化才會分配記憶體,所以靜態成員不能訪問非靜態的成員.因為靜態成員存在於記憶體,所以非靜態成員可以直接訪問類中靜...

靜態成員變數和靜態成員函式

我們學到的類物件的成員變數一般都是這個物件專屬,不能為其他物件所共有。然而在實際程式設計中我們需要統計物件的數量等問題,所以就必須設定乙個類的物件所共有的變數,就是靜態成員變數。首先通過乙個簡單的例程 說明靜態成員如何使用。includeusing namespace std class a vir...

靜態成員變數和靜態成員函式

本章內容均為coursera中c 程式設計課件的整理 基本概念 靜態成員 在說明前面加了static關鍵字的成員。class crectangle 普通成員變數每個物件有各自的乙份,而靜態成員變數一共就乙份,為所有物件共享。sizeof 運算子不會計算靜態成員變數。class cmyclass 則 ...