我创建了一个int变量。
然后我将它分配给指针。
之后,我对它进行了测试,然后最终删除了。
会发生什么?控制台弹出,但随后立即出现错误对话框,并显示错误Assertion Failure。任何人都可以解释我收到错误的原因吗?这是代码:
int main()
{
int mainNum = 10;
int *numPt;
numPt = &mainNum;
cout << &numPt;
delete(numPt);
cout << endl << endl << endl; // this is to secure last newline char to be outputted.
cout << "---------------------------" << endl;
return 0;
}
答案 0 :(得分:1)
您无法删除堆叠中的内容。您只能删除堆上的内容(由new
创建)。否则会发生各种各样的事情