1.派生類建構函式:
派生類不能繼承基類的建構函式,必須自己定義建構函式進行新增資料成員初始化工作,如果想同時初始化基類資料成員,必須呼叫基類建構函式。
(1)簡單派生類建構函式:
1 #include 23 #include 4
5 using namespace std;
6 7
8 9 class st1
10 11
(b)基類沒有定義建構函式或者基類建構函式無參—呼叫基類預設建構函式
st2(int a, string add ){age = a; addr = add;cout<
(c)基類中過載了建構函式,既有有參的又有無參的,具體呼叫哪個視派生類構造函式引數個數而定。
2.派生類的析構函式【留坑---虛析構函式】:
(1).正如派生類不能繼承基類的建構函式,派生類也不能繼承基類的析構函式,派生類的清理工作由派生自身析構函式負責,基類的清理工作由基類析構函式負責。
(2).析構函式的呼叫順序正好和構造函式呼叫順序相反,即先呼叫派生類析構函式清理新增的成員,再呼叫子物件析構函式(基類析構函式)清理子物件,最後再呼叫基類析構函式清理基類成員。
**:
派生類的建構函式與析構函式
派生類的建構函式的定義形式為 派生類名 派生類名 引數總表 基類名1 引數名錶1 基類名2 引數名錶2 基類名n 引數名錶n 成員物件名1 成員物件引數名錶1 成員物件名m 成員物件引數名錶m 所列出的成員物件名全部為新增成員物件的名字 本例只是為了演示派生類的定義與使用,盡可能顧及最常用的各方面。...
派生類建構函式與析構函式的構造規則
1.派生類的建構函式可以不顯示式的寫出基類的建構函式。例如 third 此時,系統自動呼叫基類的無參建構函式 沒有,則為預設的建構函式 也可顯示式的指出呼叫基類的哪乙個建構函式。例如 third int x,int y,int z second x,y 2.要呼叫的基類建構函式的引數可在派生類的建構...
派生類的建構函式和析構函式
c 學習筆記和總結 這段時間看了c 中類的繼承和派生,這應該算是c 和c語言相比最主要的乙個知識點了。不得不說類的功能是十分強大的,它定義了public,protected,private三種訪問內部成員的訪問許可權,增加了程式的安全性和保護性。通過定義類的物件可以訪問類的成員,但是定義物件是外部訪...