C 繼承深入理解(二)

2021-08-25 17:32:21 字數 974 閱讀 2080

多繼承:乙個派生類繼承多個基類

#include  #include  using namespace std;

class base1

3.隱藏:派生類重新定義基類的方法

1.函式名  引數完全與基類一樣

2.函式名相同 引數不同 。這兩種情況都叫隱藏

隱藏與過載區別:

1.過載在統一類作用域,隱藏在不同類作用域

2.過載 函式名相同 引數列表不同,隱藏只要是函式名一樣

隱藏結果:(呼叫方法該是誰的就是誰的!!!)

1.基類指標指向派生類物件或引用派生類物件,通過指標呼叫方法.隱藏派生類的方法.呼叫基類方法

2.派生類指標或引用派生類物件,呼叫方法,隱藏基類的方法.呼叫派生類方法

方法該是誰的就是誰的;

#include  #include  using namespace std;

class base1

4. 多繼承鑽石菱形問題引出

原因:多繼承是基類方法命名衝突問題

#include  #include  using namespace std;

class base1

void fun()

private:

int t;

};class base1:virtual public base

private:

int a;

};class base2:virtual public base

private:

int b;

};class child:public base2,public base1

private:

int c;

};int main(int argc, char const *argv)

C 繼承深入理解(一)

繼承 子類繼承父類,子類的物件可以直接訪問父類 公有或保護 成員繼承最大特點提高 重用,也體現 的共性與個性 派生類 繼承父類的子類 基類 被繼承類 父類 繼承語法 派生類 繼承方式 基類 繼承方式 1.private 私有繼承.預設為此繼承方式.不能繼承基類的私有成員.繼承基類公有成員,在派生類中...

深入理解C 之繼承

目錄 繼承 封裝和多型是物件導向程式設計的重要特性。其成員被繼承的類叫基類也稱父類,繼承其成員的類叫派生類也稱子類。派生類隱式獲得基類的除建構函式和析構函式以外的所有成員。派生類只能有乙個直接基類,所以c 並不支援多重繼承,但乙個基類可以有多個直接派生類。繼承是可以傳遞的。即 如果classb派生出...

深入理解js繼承

var nam var man1 man1.name hkj man1.age 20 function man name,age var man2 man hkj 20 function man name,age var man3 new man3 hkj 20 vat man4 new man4 ...