如何用delete释放内存
时间: 2024-03-21 15:14:13 浏览: 48
读new、delete、指向连续空间的指针、数组、空间释放、空间申请[C++][内存管理] 有感
使用 `delete` 操作符可以释放通过 `new` 操作符动态分配的内存。其语法为:
```c++
delete pointer;
```
其中,`pointer` 是要释放的指针。
需要注意的是,使用 `delete` 操作符释放内存时,必须保证指针指向的内存是通过 `new` 操作符分配的。否则,会导致未定义行为。
同时,还需要注意以下两点:
1. 对于数组形式的动态内存分配,释放内存时需要使用 `delete[]` 操作符而不是 `delete` 操作符。例如:
```c++
int* arr = new int[10];
// ...
delete[] arr;
```
2. 释放内存后,应该将指针设置为 `nullptr`,避免成为“野指针”。例如:
```c++
int* p = new int;
// ...
delete p;
p = nullptr;
```
阅读全文