临时想到,总结一下,慢慢再补充完善:
1、一个类总是必须用new创建,然后在自身成员函数中delete本身
把析构定义为private或者protected即可
class test
{
publuc:
test();
protected:
~test();
};
或者,构造也定义为private或protected,提供一个static的创建成员
class test
{
public:
static test* create();
static void destroy(test*);
protected:
test();
~test();
};