下面程序的运行结果为( )

#include <iostream>
using namespace std;
class A{ 
publicA(){ cout<<"1";}
~A(){ cout<<"2";1}
};
class B:public A{ 
public:B(){ cout<<"3";}
~B(){ cout<<"4";}
};
void main(){ B b;}

答案:1342
解析:在C++中:
(1)对于构造函数,先调用基类的构造函数,再调用派生类的构造函数,就像盖楼房一样,从地基开始,一层两层往上盖。。。
(2)对于析构函数,先是调用派生类的析构函数,再调用基类的析构函数,就像拆楼房一样,从上面开始拆。。。
注:先构造的后析构。

    原文作者:德馨居
    原文地址: https://blog.csdn.net/qq_45616304/article/details/108554486
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞