亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 學習筆記 > 嵌入式學習筆記:C++繼承的三種方式,用實例教會你

嵌入式學習筆記:C++繼承的三種方式,用實例教會你 時間:2018-09-05      來源:未知

c++繼承是c里面學習比較難的,在這里告訴你c++繼承,從各個方面來給你一一擊破難點。讓你快速學習。

面向對象程序設計中最重要的一個概念是繼承。繼承允許我們依據另一個類來定義一個類,這使得創建和維護一個應用程序變得更容易。這樣做,也達到了重用代碼功能和提高執行時間的效果。

當創建一個類時,您不需要重新編寫新的數據成員和成員函數,只需指定新建的類繼承了一個已有的類的成員即可。這個已有的類稱為基類,新建的類稱為派生類。

如何實現繼承?

一個類可以派生自多個類,這意味著,它可以從多個基類繼承數據和函數。定義一個派生類,我們使用一個類派生列表來指定基類。類派生列表以一個或多個基類命名,形式如下:

class derived­class: access­specifier base­class

其中,訪問修飾符 access-specifier 是 public、

protected 或 private 其中的一個,base-class 是之前定義過的某個類的名稱。如果未使用訪問修飾符 access-specifier,則默認為private。

注:

子類也可以稱為派生類,父類可以稱為基類。

繼承后,子類會完全繼承父類中所有的成員變量和成員函數(除父類的構造函數以外)

public :公有的成員在任何地方都可以訪問

protected:受保護的成員,在類的作用范圍內可以訪問,友元也可以訪問,在其派生類中也可以訪問,在類的外部不能訪問。

private:私有的成員在類的作用范圍內可以訪問,友元也可以訪問。

一個派生類繼承了所有的基類方法,但下列情況除外:

基類的構造函數、析構函數和拷貝構造函數。

基類的重載運算符。

基類的友元函數。

構造和析構的順序:

子類的構造函數一定會先調用父類的構造函數,先初始化從父類繼承而來的成員變量,再調用自己的構造函數初始化新增的成員變量。

析構相反,先調用子類的析構函數釋放新增內存,再調用父類的析構函數釋放從父類繼承而來的部分。

當父類的構造函數沒有參數的時候,子類的構造函數可以不主動調用父類的構造函數,但是父類的構造函數依然會被自動調用。

三種繼承方式:

1.公有繼承 父類的公有成員繼承到子類中是公有屬性,父類的保護成員繼承到子類中是保護屬性,父類的私有成員繼承到子類中不可訪問。

2.保護繼承 父類的公有成員繼承到子類中是保護屬性,父類的保護成員繼承到子類中是保護屬性,父類的私有成員繼承到子類中不可訪問

3.私有繼承 父類的公有成員繼承到子類中是私有屬性,父類的保護成員繼承到子類中是私有屬性,父類的私有成員繼承到子類中不可訪問

公有成員保護成員私有成員

公有繼承公有成員保護成員不可訪問成員(通過基類接口訪問)

保護繼承保護成員保護成員不可訪問成員(通過基類接口訪問)

私有繼承私有成員私有成員不可訪問成員(通過基類接口訪問)

在類的內部:只有父類的私有成員不能訪問。

在類的外部:只能訪問該對象的公有成員

多層繼承

A繼承自B,B繼承自C,可以得出,A繼承了C,繼承具有傳遞性多重繼承

一個類繼承自多個父類

如何多重繼承?

class 子類名 :public 父類1名, public 父類2名...

{

子類成員....

};

多重繼承構造函數的順序?

一定先從左到右依次調用父類的構造函數,再調用自己的構造函數析構的順序相反。

多重繼承會引發二義性,如何解決?

方法1:在調用具有二義性的成員函數時,指明函數的作用域,到底是從哪個基類繼承而來的。

方法2:虛繼承

C++使用虛擬繼承(Virtual Inheritance),解決從不同途徑繼承

來的同名的數據成員在內存中有不同的拷貝造成數據不一致問題,

將共同基類設置為虛基類。這時從不同的路徑繼承過來的同名數據成員

在內存中就只有一個拷貝,同一個函數名也只有一個映射。

繼承的關系

has-a 有什么。 組合關系不能構成繼承關系 is-a 是什么, 能構成繼承關系

like-a 像什么一樣 不能構成繼承關系 as---a 作為實現手段 不能構成繼承關系總結:

當類中有成員變量是其他類的對象的時候,先從上到下依次構造對象成

員,再調用自己的構造函數。

析構的順序相反。

當類中既有多重繼承,又有成員變量是其他類的對象,先從左到右依次調用父類構造函數,再從上到下

依次構造對象成員,最后調用自己的構造函數。

上一篇:嵌入式學習筆記:進程間的通信方式總結

下一篇:嵌入式學習筆記:類與封裝基礎入門知識分享

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 狠狠色婷婷丁香六月 | 夜夜夜操 | a级毛片免费在线观看 | 日本成人三级 | a级亚洲片精品久久久久久久 | 日本三级韩国三级在线观看a级 | 久久人人 人人澡 人人澡 | 国产v片成人影院在线观看 国产v亚洲v天堂无码 | www.av在线| 欧美一区二区三区不卡片 | 天堂网亚洲 | 火车上的激情刺激小说h | 看视频免费 | 国产午夜精品一区二区三区不卡 | 国产免费91 | 国产精品亚洲欧美日韩久久 | 国内视频一区二区 | 99re8热精品免费视频 | 欧美人bbbwww| 国产精品视频第一区二区 | 日本午夜片成年www 日本午夜色 | 黄色软件大 | www.亚洲.com| 欧美性猛交xxxx乱大交极品 | 国产精品国产三级专区第1集 | 久久精品国产精品亚洲毛片 | 国产综合视频 | 国产高清美女一级a毛片久久 | 福利一区二区三区视频午夜观看 | 日韩色中色 | 卡一卡2卡三精品 | a在线免费观看视频 | 国产无遮挡又黄又大又爽 | 剧情片在线 | 日产日韩亚洲欧美综合搜索 | 天天爱天天色 | 久操免费视频 | 精品全国在线一区二区 | 久久综合久久综合久久综合 | 999精品视频在线 | 久久91精品牛牛 |