关于析构函数的掉用
#include <iostream>
using namespace std;
class A
{
public:
A()
{cout<<"Constructing A\n";}
~A()
{cout<<"Constructing A\n";}
};
class B
{
public:
B()
{cout<<"Constructing B\n";}
~B()
{cout<<"Destructing B\n";}
};
class C:public A,public B
{
public:
C()
{cout<<"Constructing C\n";}
~C()
{cout<<"Destructing C\n";}
};
main()
{
C ob;
system("pause");
return 0;
}
结果输出:Construction A
Construction B
Construction C
为什么不输出析构函数,哪个讲解一下这个程序
问题点数:20、回复次数:4Top
1 楼huyc_fly()回复于 2006-03-11 15:46:09 得分 20
system("pause");你这个要按任意键,程序再继续执行对象的析构函数;
Top
2 楼discory(discory)回复于 2006-03-11 15:50:30 得分 0
哦,谢谢Top
3 楼steedhorse(晨星)回复于 2006-03-11 15:51:41 得分 0
可能是太快了,你没来得及看到就窗口就没了,你用“Ctrl-F5”,别用“F5”应该就可以看到了。Top
4 楼steedhorse(晨星)回复于 2006-03-11 15:53:03 得分 0
要么你这样,
main()
{
{
C ob;
}
system("pause");
return 0;
}
就可以在
system("pause");
之前自到。Top




