1.定義靜態資料成員後要對靜態資料成員進行初始化!
靜態資料成員的初始化:
《資料型別》《類名》::靜態資料成員 = 《值》
2.靜態資料成員往往數私有的,靜態資料成員不能直接訪問,要通過定義為公有的靜態函式成員來訪問靜態資料成員。
3.靜態函式成員介面實現時在前面不加 static 字首。
4.靜態函式成員,不能直接訪問非靜態資料成員,除非通過物件名來訪問該物件的非靜態資料成員。
部分**描述:定義貨物類,私有成員有貨物重量,貨物總重量(靜態資料成員),初始化靜態資料成員。
static int gettotalweight();不能直接訪問 weight
#include
using namespace std;
class tgoods
;//△《資料型別》《類名》::《靜態資料成員名》=《值》
int tgoods:
:totalweight =0;
tgoods:
:tgoods
(int w)
tgoods::~
tgoods()
tgoods:
:getweight()
int tgoods:
:gettotalweight()
intmain()
C 靜態成員初始化
在c 類中,靜態成員一般不允許在類宣告中進行初始化,應該在類的外部進行初始化,例如 class a static int a a 0 初始化方式 void main void 但是有乙個例外,可以為靜態成員提供const 整數型別的類內初始值。要求靜態成員必須是字面值常量型別的constexpr 因...
C 靜態成員 靜態資料成員和靜態函式成員
由關鍵字static修飾說明的類成員,成為靜態類成員 static class member 包括 靜態資料成員和靜態函式成員。類的靜態成員為其所有物件共享,不管有多少物件,靜態成員只有乙份存於公用記憶體中。雖然使用static修飾說明,但與函式中的靜態變數有明顯差異。在類定義中,用關鍵字stati...
c 靜態函式和靜態成員
靜態函式 在類內宣告static,在類外定義時不能再用static,靜態函式可以訪問類的靜態物件。靜態物件 靜態物件不屬於任何乙個物件,所以他們並不是在建立類的物件時被定義的,也就是不能被建構函式初始化。要想定義全域性變數一樣定義靜態物件。生命週期和全域性變數一樣。通常,為了防止物件多次定義,最好把...