最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

三、類的繼承(派生)

2022-11-07 08:30 作者:愛玩UE5的小哥哥  | 我要投稿

C++?中的繼承是類與類之間的關系,是一個很簡單很直觀的概念,與現(xiàn)實世界中的繼承類似,例如兒子繼承父親的財產。
繼承(Inheritance)可以理解為一個類繼承另一個類成員變量和成員函數(shù)的過程。例如類 B 繼承于類 A,那么 B 就擁有 A 的成員變量和成員函數(shù)。
在C++中,派生(Derive和繼承是一個概念,只是站的角度不同。繼承是兒子接收父親的產業(yè),派生是父親把產業(yè)傳承給兒子。
被繼承的類稱為父類或基類,繼承的類稱為子類或派生類?!白宇悺焙汀案割悺蓖ǔ7旁谝黄鸱Q呼,“基類”和“派生類”通常放在一起稱呼。
派生類除了擁有基類的成員,還可以定義自己的新成員,以增強類的功能。

語法

class 派生類名:[繼承方式] 基類名{
??? 派生類新增加的成員
};

繼承方式:public、protected、private

一.繼承方式與基類成員在派生類中的訪問權限

1.public繼承方式

基類中所有 public 成員在派生類為 public 屬性;

基類中所有 protected 成員在派生類中為 protected 屬性;

基類中所有 private 成員在派生類中不可見(不能使用)。

2.protected繼承方式

基類中的所有 public 成員在派生類中為 protected 屬性;

基類中的所有 protected 成員在派生類中為 protected 屬性;

基類中的所有 private 成員在派生類中不可見(不能使用)。

3.private繼承方式

基類中的所有 public 成員在派生類中均為 private 屬性;

基類中的所有 protected 成員在派生類中均為 private 屬性;

基類中的所有 private 成員在派生類中不可見(不能使用)。

派生的兩種典型場景

1.?當你創(chuàng)建的新類與現(xiàn)有的類相似,只是多出若干成員變量或成員函數(shù)時,可以使用繼承,這樣不但會減少代碼量,而且新類會擁有基類的所有功能。
2.當你需要創(chuàng)建多個類,它們擁有很多相似的成員變量或成員函數(shù)時,也可以使用繼承??梢詫⑦@些類的共同成員提取出來,定義為基類,然后從基類繼承,既可以節(jié)省代碼,也方便后續(xù)修改成員。

二.繼承時遮蔽基類成員問題

如果派生類中的成員(包括成員變量和成員函數(shù))和基類中的成員重名,那么就會遮蔽從基類繼承過來的成員。所謂遮蔽,就是在派生類中使用該成員(包括在定義派生類時訪問基類成員,也包括通過派生類對象訪問該成員)時,實際上使用的是派生類新增的成員,而不是從基類繼承來的。

三.派生類的構造函數(shù)

類的構造函數(shù)不能被繼承。構造函數(shù)不能被繼承是有道理的,因為即使繼承了,它的名字和派生類的名字也不一樣,不能成為派生類的構造函數(shù),當然更不能成為普通的成員函數(shù)。

在設計派生類時,對繼承過來的成員變量的初始化工作也要由派生類的構造函數(shù)完成,但是大部分基類都有 private 屬性的成員變量,它們在派生類中無法訪問,更不能使用派生類的構造函數(shù)來初始化。
這種矛盾在C++繼承中是普遍存在的,解決這個問題的思路是:在派生類的構造函數(shù)中調用基類的構造函數(shù)。

無論派生類有沒有自己的構造函數(shù),在創(chuàng)建派生類的對象時必須調用基類的構造函數(shù)



三、類的繼承(派生)的評論 (共 條)

分享到微博請遵守國家法律
个旧市| 天气| 嘉义市| 株洲市| 陇川县| 蒙阴县| 西宁市| 自贡市| 洪湖市| 和硕县| 读书| 乐都县| 胶南市| 娱乐| 南澳县| 嘉荫县| 建阳市| 雷波县| 通渭县| 东港市| 沂南县| 景德镇市| 房产| 景泰县| 南漳县| 虎林市| 江阴市| 瑞金市| 甘德县| 三都| 玉门市| 西盟| 浦城县| 梁山县| 江山市| 准格尔旗| 禄丰县| 龙井市| 青神县| 上饶县| 黑龙江省|