如果在C++中将“delete”应用于数组而不是“delete []”,那么将会创建内存泄漏,因为只有第一个元素被删除。但是,如果您意外地将“delete []”应用于非数组指针会发生什么呢?例如(仅作为玩具示例):
它会有什么危害吗?如果有,那么是哪些危害?
class X {
void foo()
{
X* x = new X();
delete[] x; // What happens here?
}
};
它会有什么危害吗?如果有,那么是哪些危害?