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),我想知道: 什麼是正確的方法來做到這一點? 爲什麼它以另一種方式進行編譯?