11.6.4重学C++之【继承中构造和析构顺序】

#include<stdlib.h>
#include<iostream>
#include<string>
using namespace std;



/*
    4.6.4 继承中构造和析构顺序
        子类继承父类后,当创建子类对象时,也会调用父类的构造函数
        结论:先构造父类在构造子类,析构顺序与构造相反
*/



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 test1(){
    //Base b;
    /*
        Base 构造
        Base 析构
    */
    Son s;
    /*
        Base 构造
        Son 构造
        Son 析构
        Base 析构
    */
}



int main()
{
    test1();

    system("pause");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/HAIFEI666/article/details/114916896
今日推荐