c++中的delete怎么使用

avatar
作者
筋斗云
阅读量:3

在 C++ 中,delete 用于释放由 new 动态分配的内存。它接受一个指针作为参数,并释放该指针指向的内存。

// 动态分配内存 int* ptr = new int;  // 使用内存  // 释放内存 delete ptr; 

在使用 delete 之前,必须先使用 new 进行内存的动态分配。delete 会调用对象的析构函数来清理对象的资源,并释放内存空间。

如果动态分配的内存是一个数组,应使用 delete[] 来释放内存,而不是使用 delete

// 动态分配数组 int* arr = new int[5];  // 使用数组  // 释放数组内存 delete[] arr; 

需要注意的是,使用 deletedelete[] 释放内存后,指针将成为悬空指针,使用该指针将导致未定义的行为。为了避免悬空指针的出现,可以将指针设置为 nullptr

int* ptr = new int; // 使用内存  delete ptr;  // 将指针设置为 nullptr ptr = nullptr; 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!