刷野打怪上王者 C 篇 第14期 繼承操作

2021-10-02 11:00:22 字數 2730 閱讀 2615

參考鏈結

runoob.com

繼承操作

繼承操作可以通過乙個已有類來定義新的類。說白了就是當我們在定義乙個新類的時候,不需要重新編寫新的類成員和方法,可以繼承已有的類成員即可。其中,已有的類為基類,新建立的類成為派生類

派生類可以從多個基類進行繼承,下面看一下派生類的定義方法:

class 派生類名: 訪問許可權(public/private/protect) 基類;
下面通過例項來說明一下:

#include using namespace std;

//基類

class animalclass

;animalclass::animalclass (){}

int animalclass::setanimalfeature(int itmpvar1, float itmpvar2)

animalclass ::~animalclass (){}

//派生類

class dogclass : public animalclass //宣告派生類

;dogclass::dogclass(){}

int dogclass::getdoginfo()

dogclass::~dogclass(){}

int main()

執行結果

狗的年齡:2高度:0.5
:上面講解了派生類繼承了乙個基類裡面的方法和類成員變數,下面我們來說乙個繼承多個基類的使用方法:

class 派生類名:《訪問許可權1> 基類1, 《訪問許可權2> 基類2,...

舉例說明

#include using namespace std;

//基類1

class animalclass

;animalclass::animalclass (){}

int animalclass::setanimalfeature(int itmpvar1, float itmpvar2)

animalclass ::~animalclass (){}

//基類2

class foodclass

;foodclass ::foodclass(){}

int foodclass::seteatfood(char * ctmpname)

foodclass ::~foodclass(){}

//派生類

class dogclass : public animalclass, public foodclass //宣告派生類

;dogclass::dogclass(){}

int dogclass::getdoginfo()

int dogclass::getdogeatfood()

dogclass::~dogclass(){}

int main()

執行結果

狗的年齡:2高度:0.5

狗的喜歡吃:meat

聊完了派生類中繼承單個基類和多個基類,下面我們來說一下訪問許可權的作用,訪問許可權主要有public、private、protected三種:

public公有繼承):保持基類裡面方法和類變數的訪問控制,即原先為public許可權,繼承下來同樣為public許可權;即原先為protected許可權,繼承下來同樣為protected許可權;privated不能派生訪問,但是可以呼叫public和protected成員來進行訪問。

protected保護繼承): 當乙個類派生自保護基類時,基類的公有保護成員將成為派生類的保護成員。

private私有繼承):當乙個類派生自私有基類時,基類的公有保護成員將成為派生類的私有成員

其實,就是取派生類訪問許可權基類許可權交集

說明:派生也不是類中所有成員和變數都可以進行派生的,例如:基類的建構函式析構函式和拷貝建構函式基類的過載運算子基類的友元函式,就不能進行派生訪問。

下面通過表來看一下,類中訪問許可權的作用範圍:

刷野打怪上王者 C 篇 第4期 注釋

c 注釋 要寫出好程式,一方面要實現特定的功能,另外一方面就是能夠讓別人看懂自己寫的 那怎麼讓人更好的看懂自己的 一是要有良好的命名規則 這個已經在上篇說過啦 二是要有寫程式注釋的習慣。在c 程式設計中的注釋主要有兩個 單行注釋和多行注釋。單行注釋其實就是在程式行前新增 cout hello wor...

刷野打怪上王者 C 篇 第27期 總結

刷野打怪上王者 c 篇 第26期 時間函式 預處理 刷野打怪上王者 c 篇 第25期 動態記憶體處理 刷野打怪上王者 c 篇 第24期 訊號處理 刷野打怪上王者 c 篇 第23期 標準流輸入輸出 刷野打怪上王者 c 篇 第22期 多執行緒處理 刷野打怪上王者 c 篇 第21期 模板處理 刷野打怪上王...

刷野打怪上王者 C 篇 第9期 判斷 迴圈

參考鏈結 runoob.com 判斷 在判斷語句中主要有兩種 if.else和switch兩個語句。下面我們還是主要通過 來說明 先看一看看if.else語句 include using namespace std int main 執行結果 ivar1 小於 ivar2上面這段 是前幾篇中提到的,...