代码点读机 / C++ / delete

delete C++ · 关键字

释放 new 申请的堆内存,把租来的仓库退掉;指针本身还在,只是指向的内存被回收了。

怎么用

delete 指针;

小例子

int* p = new int(5);
delete p;
// *p 是未定义行为,危险

编译结果

释放对应内存,p 成为悬空指针

提醒:delete 后最好把指针置为 nullptr;数组 new 必须用 delete[] 释放

官方文档:https://en.cppreference.com/w/cpp/language/delete

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C++全部词条