首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

c++类成员析构顺序是如何样的

2012-02-28 
c++类成员析构顺序是怎么样的?c++类成员析构顺序是怎么样的?按道理说是 :1 成员先构造2类自己再构造析构的

c++类成员析构顺序是怎么样的?
c++类成员析构顺序是怎么样的?

按道理说是 :

1 成员先构造  
2类自己再构造

析构的顺序是先2再1 

但是我加打印怎么不是阿 ?



[解决办法]

C/C++ code
class Test{public:    Test()    {    }    ~Test()    {        cout<<"Test destructor"<<endl;    }};class Test1{public:    Test1()    {    }    ~Test1()    {        cout<<"Test1 destructor"<<endl;    }};class Test2{public:    Test2()    {    }    ~Test2()    {        cout<<"Test2 destructor"<<endl;    }private:    Test a;    Test1 b;};int main(){    Test2 *c=new Test2;    delete c;    system("pause");    return 0;}
[解决办法]
构造的时候 先 成员的 再自己的
如果有多个成员
按成员在类中的声明顺序而非初始化成员列表的顺序

析构和构造相反

热点排行