【发布时间】:2020-05-25 04:59:08
【问题描述】:
让我们考虑这段代码:
#include <iostream>
class A{
public:
~A() {}
};
int main(){
A *p = new A();
p->~A();
return 0;
}
我想知道p指向的对象A的内存是否被释放或者我们必须调用delete p;
【问题讨论】:
-
你不应该显式调用析构函数。
-
不,它只是调用析构函数。
delete调用析构函数并释放内存。
标签: c++ destructor dynamic-memory-allocation