#include <iostream>
using namespace std;
class b{
public:
b(){
cout<<"b gou zao han shu"<<endl;
}
~b(){
cout<<"b xi gou han shu "<<endl;
}
};
class a{
public:
a(){
cout<<"a gou zao han shu"<<endl;
}
~a(){
cout<<"a xi gou han shu "<<endl;
}
private:
b bb;
};
void fun(){
a bb;
return ;
}
int main(){
fun();
getchar();
return 0;
}
控制台输出结果:
a为主要类,b为成员类,所以执行顺序为 baab,也就是说,先执行成员类构造函数,再执行主类的构造函数。当回收的时候,先执行主类的析构函数,在执行成员类的析构函数。.