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

ExitProcess(0)解决办法

2012-04-10 
ExitProcess(0)Windows核心编程中,有个例子class test{public:test(){printf(Constructor\n)}~test(){p

ExitProcess(0)
Windows核心编程中,有个例子
class test
{
public:
test(){printf("Constructor\n");}
~test(){printf("Destructor\n");}
};
test t1;
int _tmain(int argc, _TCHAR* argv[])
{
test t2;
ExitProcess(0);
return 0;
}
说上说只会有两个Constructor输出,而不会有Destructor,但我用VS2008测试会有两个Constructor和一个Destructor,而且测试过Destructor应该是局部变量析构的结果。这难道又是编译器不同的结果??

[解决办法]
class test
{
public:
test(int i):mi(i){printf("Constructor\n");}
~test(){printf("Destructor %d\n",mi);}
private:
int mi;
};
test t1(100);
int _tmain(int argc, _TCHAR* argv[])
{
test t2(200);
ExitProcess(0);
return 0;
}

析构的结果打印100
[解决办法]
看错了,vc6的动态库也可以

热点排行