int main()
{
myClass obj;
.... /* doing things */
....
delete &obj; /* illegal */
}
让我们假设 myClass 是一个适当的 C++ 类,一切就绪。现在,我知道这是非法的,这个程序会在运行时崩溃。第一件事是代码试图删除一个堆栈对象,然后在范围完成后再次删除它。我想知道这个非法操作的内部情况。即删除会发生什么,它会调用析构函数吗?这对你来说可能看起来很疯狂,但请帮助我理解。