繼承與派生(13 賦值相容規則) 非重點

2021-10-07 10:20:09 字數 796 閱讀 6683

賦值相容規則:以基類a為例,在程式中需要使用基類a物件的任何地方,都可以用通過公有繼承方式繼承基類a的派生類的物件來替代。

classa;

classb:

public a;.

..a a;

b b;

a=b;..

.

這樣賦值的效果:物件b中的所有資料成員都將具有物件a中對應資料成員的值

classa;

classb:

public a;.

..b b;

a &aaa=b;..

.

classa;

classb:

public a;.

..b b;

a *bptr=

&b;

1.在替代之後,派生類的物件就可以作為基類的物件使用,但只能使用從基類繼承的成員。

2.乙個派生類的物件也是乙個基類的物件,乙個基類的物件可派上用場的地方派生類物件一樣可派上用場,但反之則不然。即派生類物件可替代基類物件,但基類物件不可以替代派生類物件;

e.g

class

person

;class

student

:public person

;void

eat(person p)

;void

study

(student s)

;int

main()

同名隱藏與賦值相容規則

在繼承體系中我們的編寫派生類一般可分四個步驟 1 吸收基類成員 除建構函式和析構函式外全部接收 2 改造基類成員 宣告乙個和某基類成員的新成員,派生類中的新成員就遮蔽了基類同名成員稱為同名隱藏 3 發展新成員 派生類新成員必須與基類成員不同名,它的加入保證派生類在功能上有所發展 4 重寫建構函式和析...

繼承與派生(5 重名隱藏問題) 非重點

注意 只要成員的名字一致就會被隱藏,不用管成員的型別一不一樣,也不用管引數的型別與個數一不一樣基類的名字 被隱藏的資料成員classa classb private a.派生類的物件名.基類名 被隱藏的資料成員classa classb private a int main 基類的名字 被隱藏的成員...

四 同名隱藏,繼承的特性 賦值相容規則

目錄 一.子類中的函式同名隱藏 二.繼承的特性 賦值相容規則 1.同名隱藏的概念 設在某一繼承關係中,子類中有乙個和父類中同名的函式 show 那麼子類在呼叫show 方法時,系統將呼叫子類的show 方法,而不會去呼叫父類的show 方法,這種現象叫做同名隱藏。切記 這裡的show 方法不是我後面...