デストラクタを呼び出すこれだけとはdelete ptr
異なりますか?つまり、最初にのデストラクタを呼び出してから、割り当てられたメモリを解放しますか?その場合、技術的には次のようになります。operator delete(ptr)
delete
ptr
delete ptr
ptr
operator delete(ptr)
delete ptr
T * ptr = new T;
//delete ptr equivalent:
ptr->~T();
::operator delete(static_cast<void *>(ptr));
?