1、非靜態成員函式後面加const(加到非成員函式或靜態成員後面會產生編譯錯誤)
2、表示成員函式隱含傳入的this指標為const指標,決定了在該成員函式中,
任意修改它所在的類的成員的操作都是不允許的(因為隱含了對this指標的const引用);
3、唯一的例外是對於mutable修飾的成員。
加了const的成員函式可以被非const物件和const物件呼叫
但不加const的成員函式只能被非const物件呼叫
char getdata() const
在如下的類宣告中:
class person
const string& getname()const
// ….other public members.
private:
string name;
};成員函式getname的返回資料成員name的乙個const型引用,此處的const表明誰也不能通過這個引用來修改資料成員name的值。同時注意這個類展示了const的三種不同用法。返回型別為引用,意味著返回的是呼叫物件本身,而不是其副本。
class
school
private
:
int
mint;
};
class
student:
public
school
private
:
school mschool;
string mname;
};
成員物件先構造後析構。
這種解決方法不少,1:採用初始化式構造pemployee(string employee_name, double initial_salary):person_date(employee_name,10){};你沒給age值,最好能多傳進來乙個引數。2:給 person類新增兩個公有的方法,setname(),setage();
c 類中包含自身類物件的set
c 中,類中自身類物件不能做自己的類成員,但可以做靜態資料成員,引用資料成員,以及vector,set中的型別成員。如下面 中定義的類。include includeusing namespace std class a a int aa,int bb,int cc a int aa,int bb,...
類的組合(類的包含)
1.組合關係 2.繼承關係 1.封閉類 類a的資料成員 公有或私有 是類b的物件,這一形式是類的組合,類a就叫做封閉類 2.物件成員 類a的資料成員 公有或私有 是類b的物件,則該資料成員叫做物件成員 例如 include include using namespace std class poin...
c 類 物件詳解
c 在c語言的基礎上增加了物件導向程式設計 類是c 的核心特性 類用於指定物件的形式,包含了資料的型別和處理資料的方法。類中的資料和方法稱為類的成員。定義乙個類,本質就是在這個類中定義資料型別,和相應處理該資料的方法。形式為 class 類名 例如 class box int main 執行結果 v...