class对象 的 声明 和 生命周期

这里简述一下一个重点的地方。关于静态声明,new,和临时变量等就不在赘述;

环境:Visual C++;

假设:

class CTest
{
public: 

CTest()
{
cout << "构造函数" ;


~CTest()
{
cout << "析构函数";

}




void TestClick1()
{
CTest(); 

AfxMessageBox(L"暂停阻塞TestClick函数");
}


void TestClick2()
{
CTest CTestObj(); 

AfxMessageBox(L"暂停阻塞TestClick函数");

}


读者可否看出输出结果有何不同;

void TestClick1() 执行结果:

1:构造函数, 2:析构函数, 3:显示消息框 “暂停阻塞TestClick函数”;

void TestClick2() 执行结果:

1:构造函数, 2:显示消息框 “暂停阻塞TestClick函数”, 3:析构函数 (只有确定消息框才可执行析构函数);



你可能感兴趣的:(class对象 的 声明 和 生命周期)