c 之繼承與派生

2021-09-08 03:51:01 字數 754 閱讀 1737

再來回顧下繼承派生的語法。

繼承方式顯示有三種(public, protected, privatez),隱式預設private。所謂繼承方式,是指派生類對基類成員的訪問許可權控制。

派生類建構函式定義的一般格式如下:

派生類名(引數總表):基類名1(參數列1),...,基類名m(參數列m),

成員物件名1(成員物件參數列1),...,成員物件名n(成員物件參數列n)

構造函式呼叫次序:

1

.呼叫基類建構函式

2.呼叫內嵌成員物件的建構函式

3.派生類自己的建構函式

示例:

1 #include 2

using

namespace

std;34

classa 9

void

show()

12};

13class

b 18

void

show()

21};

22class c: public a, publicb31

void

show()

36};

3738

intmain()

假若多個基類擁有相同名稱的成員x,而此時派生類去呼叫x,系統無法判斷去調哪個基類的x,由此產生二義性。解決方式可以是成員名限定(eg:a::show();)或者成員重定義(同名覆蓋,如上例的c::show())。

c 之繼承與派生

繼承 inheritance 可以理解為乙個類從另乙個類獲取成員變數和成員函式的過程。例如類 b 繼承於類 a,那麼 b 就擁有 a 的成員變數和成員函式。被繼承的類稱為父類或基類,繼承的類稱為子類或派生類。class 派生類名 繼承方式 基類名 繼承方式限定了基類成員在派生類中的訪問許可權,包括 ...

C 繼承與派生

派生新類 吸收已有類的成員 調整已有類成員和新增新的成員 class 派生類名 繼承方式 基類名1,繼承方式 基類名2,派生類成員宣告 繼承方式有 public protected private 預設 公有繼承 基類的公有和保護乘員的訪問屬性在派生類中不變,基類的私有成員不能直接訪問 型別相容規則...

c 繼承與派生

繼承 與派生 一 派生方式的不同的表現 1 派生類在類內成員對基類成員 的訪問許可權 2 派生類的物件對基類成員的訪問許可權。二 公有繼承 1 基類protected和public的成員在派生類中訪問屬性保持不變 2 基類的private成員在派生類中不可訪問。3 派生類的成員 即派生類內 可以直接...