您的位置:首页 > 编程语言 > C语言/C++

C++中禁止产生非堆对象

2011-10-09 09:18 211 查看
C++中将析构函数声明为peotected 或者 private权限,可以禁止产生非堆对象。如果在栈中定义对象,则它是不能自动销毁的。

class Demo
{
public:
...
protected:
    ~Demo():
}


如上定义后,可以可以Demo *pDemo = new Demo(); 但Demo demo;就是错误的了,因为栈中的对象不能自动销毁[这个解释纯性个人理解,欢迎指正]。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: