從C看C 之 五 繼承和派生

2021-06-22 08:42:05 字數 1308 閱讀 9903

在實際的程式設計中,我們會遇到下面一種場景:

我們已經有乙個類a:

class student

~baseclass()

unsigned int basegetage(void);

bool baseget***(void);

};unsigned int baseclass::basegetage(void)

bool baseclass::baseget***(void)

class deriveclass:public baseclass

~deriveclass()

unsigned int derivegetage(void);

bool deriveget***(void);

unsigned int derivegetscore(void);

unsigned int derivegetnumber(void);

};unsigned int deriveclass::derivegetage(void)

bool deriveclass::deriveget***(void)

unsigned int deriveclass::derivegetscore(void)

unsigned int deriveclass::derivegetnumber(void)

int main(void)

編譯執行:

root@se7en-lifebook-lh531:~/learn/cpp_program# g++ class.cpp -o classtest

root@se7en-lifebook-lh531:~/learn/cpp_program# ./classtest

age = 18

*** = 0

score = 100

number = 26

~derive class

~base class

涉及到的知識點:

1.繼承與派生的程式設計思想;

2.new物件和釋放;

3.通過派生類的建構函式去實現基類的建構函式.

抽象類:

抽象類的定義:

當定義了乙個類,這個類只能用作基類來派生出新的類,而不能用這種類來定義物件時,稱這種類為抽象類.簡而言之,將類的建構函式或析構函式的訪問許可權定義為保護的時或者

包含乙個或以上的純虛函式的類,這種類為抽象類.需要注意的是,抽象類是不能用來定義物件的.

C 之繼承和派生

什麼是繼承和派生?在我們寫程式的時候,比如需要寫兩個類 男人類,和女人類 但是在寫這兩個類的方法的時候有很多方法是相同的,比如吃飯類,喝水類,學習類。這樣的寫的話就做了重複的工作,增加了 寫程式和後期維護的成本。因此c 裡就有了繼承和派生的概念,意思就是根據男人類和女人類的共同特點,抽象出乙個人類。...

c 繼承和派生

通常子類不加修飾的延續父類的特徵,我們把它叫做繼承 而子類在延續父類特徵的基礎上又新增自己的新特徵,叫做派生。擁有乙個基類的繼承是單一繼承,擁有多個基類的繼承是多重繼承。class 派生類名 派生型別 基類名 注 括號內是派生類自己的成員和成員函式。乙個類的私有成員只能被它的成員函式和友員訪問,不能...

C 繼承和派生

在c 語言中,乙個 派生類可以從乙個 基類派生,也可以從多個基類派生。從乙個基類派生的繼承稱為單繼承 從多個基類派生的繼承稱為 多繼承。派生類的定義格式 單繼承的定義格式如下 1 2 3 4 class 派生類名 繼承方式 基類名 public 表示公有繼承 private 表示私有繼承 prote...