c 高階八 派生類的析構函式

2021-10-03 06:25:14 字數 511 閱讀 5601

1,派生類物件被刪除時析構函式的執行順序

當物件被刪除時,派生類的析構函式被執行,

先執行派生類的析構函式,再類的物件成員的析構函式,最後執行基類的析構函式

與建構函式的執行順序相反

具體執行順序:

1,先執行派生類的析構函式

2,執行類初始化表上的物件成員的析構函式

3,執行基類的析構函式

2,例項

通過執行下面例項來理解上面的過程

#include

using

namespace std;

//類a的定義

classa~

a()}

;classb~

b()}

;//建立c派生類 繼承 a

classc:

public a ;

~c()

};intmain()

5 3派生類的建構函式和析構函式

派生類建構函式一般形式 派生類建構函式名 總參數列 積累建構函式名 實際引數列表 派生類中新增資料成員初始化語句 看下面 例子 class student 基類 student 預設建構函式 student 基類析構函式 protected int a double b string c class...

派生類的析構函式

include using namespace std class base base int i,int j base void print private int b1,b2 base base int i,int j base base class derived public base de...

繼承與派生 派生類的析構函式

派生類的析構函式也是在派生類物件釋放的時候進行清理工作的。前面說過,派生類無法繼承基類的析構函式,所以如果需要的話就要自己定義析構函式。派生類析構函式的定義方式與 一般類的析構函式 是一樣的,也是沒有返回型別,沒有引數,所以比建構函式需要注意的東西少多了。派生類的析構函式一般只需要在其函式體中清理新...