一、靜態成員:static修飾,每個類只有乙份拷貝,為所有該類的物件所共用。
1.靜態資料成員:
類內宣告、類外初始化。和全域性變數一樣,在資料段裡分配記憶體。
eg:class a
2).靜態成員函式可以通過類名直接呼叫,也可以通過物件來呼叫。格式為:類名::靜態成員函式; 物件.靜態成員函式。
二、常物件與常成員:const
1.常物件:必須在定義時由建構函式初始化,只能呼叫常成員函式,且只能被常成員函式訪問,生存期內不允許被修改。
定義格式:型別 const 物件名;或者 const 型別 物件名。
2.常資料成員:必須在建構函式的初始化列表裡初始化,生存期內不允許被修改。
定義格式:型別 const 資料成員名; 或者 const 型別 資料成員名。
3.常成員函式:不能更新物件的資料成員(但可以訪問),不能呼叫類中非常成員函式,在函式宣告以及定義的時候都必須加上const關鍵字。
定義格式:返回型別 成員函式名 (參數列) const。
eg:class a{
int x;
int day() const;
int a::day() const
return x;
另外,const可用於函式過載。
eg:void print()與void print() const這兩個函式可以過載。
C 之常物件,常物件成員
一.常物件 1.常物件定義 time const t1 1,2,3 或者const time t1 2.常物件不能呼叫該物件的非const型的成員函式 系統主動呼叫的構造析構函式除外 3.常成員函式的宣告方法,後面加個const即可 void get time const 4.常物件不能修改物件內的...
C 之常物件,常成員物件,常成員函式,常指標
一 常物件 time const t1 12,23,23 其中所有的值不能被修改。通過該物件只能呼叫它的常成員函式,而不能呼叫它的普通成員函式。以防普通成員函式會修改資料成員的值。但如果一定要修改常物件資料成員的值,可以將該資料成員宣告為mutable,如 mutable int count 把co...
常成員,常函式,常物件
知識點1.常物件中的任何型別的資料成員 無論私有還是公有 的值都不能被改變。知識點2.常物件能呼叫的 1.公有的常成員函式 2.建構函式 3.公有的靜態函式 知識點3.常物件與常成員函式只有同時存在才都有意義 知識點4.普通物件既可以呼叫常成員函式,也可以呼叫非常成員函式 知識點5.常成員函式不能更...