delete-operator

    72热度

    5回答

    我有一个关于const指针的基本问题。我不允许使用const指针调用任何非const成员函数。然而,允许我做一个常量指针: delete p; 这将调用类在本质上是一个非const“方法”的析构函数。为什么这是允许的?是否只是为了支持这一点: delete this; 或者是否还有其他一些原因?

    7热度

    7回答

    后,我做的,说 Foo* array = new Foo[N]; 我一直删除了这样 delete[] array; 不过,有时候我已经看到了这种方式: delete[N] array; 因为它似乎编译和工作(至少在msvc2005),我想知道: 什么是正确的方法来做到这一点? 为什么它以另一种方式进行编译?