您的位置:首页 > 其它

析构函数显示调用(系统会默认在调用一次)而构造函数不允许显示调用

2011-11-06 16:54 302 查看
#include "iostream.h"

class Sample

{

int x;

public:

Sample()

{

x=0;

}

Sample(int a)

{

cout<<(x=a);

}

~Sample()

{

cout<<++x;

}

void disp()

{

cout<<x;

}

};

void main()

{

Sample s1(2); //定义s1对象.并使用值传递 2 作实参.

s1.disp();

s1.~Sample(); //析构函数被显示调用

/* 但并不允许 s1.Sample()这样显示调用构造函数 */

/*

之所以结果为2234,是因为 无论如何系统都会自动调用对象的析构函数.

类的构造函数不能够被显示调用,析构函数可以显示调用.

*/

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: