C C 類和物件 派生類和函式遮蔽

2022-08-13 06:57:15 字數 1420 閱讀 5219

類之間有層次關係;

父類(基類、超類);子類(派生類);

父類中定義一些公用的成員變數和成員函式;通過繼承父類來構建子類;

class 子類名:繼承方式:父類
當定義子類物件時候,父類和子類的建構函式都會被呼叫,而且,父類的建構函式的函式體先執行,子類的建構函式的函式體後執行;

#include using namespace std;

class human

;human::human()

human::human(int tmp)

//men是human的子類

class men:public human

;men::men()

men::men(int tmp)

int main()

三種訪問許可權

三種繼承方式

總結:

/*函式遮蔽演示*/

#include using namespace std;

class human

;human::human()

human::human(int tmp)

void human::func()

void human::func(int tmp)

//men是human的子類

class men:public human

;men::men()

men::men(int tmp)

void men::func(int tmp)

int main()

函式遮蔽解決

如果想呼叫父類中的同名函式?

在子類的成員函式中,同名函式中呼叫:men::func();

using:c++11引入的,可以讓父類同名函式在子類中可見;通過使用using可以讓父類同名函式在子類中可見,就是讓父類同名函式在子類中以過載的方式來使用;

/*函式遮蔽解決*/

#include using namespace std;

class human

;human::human()

human::human(int tmp)

void human::func()

void human::func(int tmp)

//men是human的子類

class men:public human

;men::men()

men::men(int tmp)

void men::func(int tmp)

int main()

C C 類和物件 基類和派生類

子類物件包含多個組成部分 也就是多個子物件 含有派生類自己定義的成員變數 成員函式的子物件 該派生類所繼承的基類的子物件,這個子物件包含的是基類中定義的成員變數 成員函式 派生類物件含有基類對應的組成部分 include using namespace std class father virtua...

虛函式 與派生類遮蔽基類函式

class base public virtual void print void cout 10public void print int i cout base iter new dervied iter print 5 基類指標會在基類物件中尋找函式,找到函式名後,判斷引數,沒有乙個引數的,所...

基類和派生類

include include using namespace std class animal class dog public animal class dog public animal這裡的 就是繼承或派生,class cat public animal class item base st...