繼承中的構造和析構
阿新 • • 發佈:2021-08-23
1.順序
1.1 子類建立物件時,先呼叫父類的構造,然後呼叫自身構造
1.2 析構順序與構造順序相反
#define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Base { public: Base() { cout << "Base預設建構函式呼叫" << endl; } ~Base() { cout << "Base析構" << endl; } };class Son : public Base { public: Son() { cout << "Son預設建構函式" << endl; } ~Son() { cout << "Son析構" << endl; } }; void test01() { Son s; } int main() { test01(); //父構->子構->子析->父析 system("Pause"); return 0; }
結果:
2.子類是不會繼承父類的建構函式和解構函式
補充內容,如果父類中沒有合適預設構造,那麼子類可以利用初始化列表的方式顯示的呼叫父類的其他構造