在下面的代码中,怎么可能允许删除拥有私有析构函数的对象?我将真实程序简化为以下示例,但它仍然可以编译并正常工作。
class SomeClass;
int main(int argc, char *argv[])
{
SomeClass* boo = 0; // in real program it will be valid pointer
delete boo; // how it can work?
return -1;
}
class SomeClass
{
private:
~SomeClass() {}; // ! private destructor !
};
SomeClass
的定义来在两者之间切换。 - AnT stands with Russia