1. 程式人生 > 其它 >繼承中的構造和析構

繼承中的構造和析構

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.子類是不會繼承父類的建構函式和解構函式

補充內容,如果父類中沒有合適預設構造,那麼子類可以利用初始化列表的方式顯示的呼叫父類的其他構造