delete 操作符
释放由new操作符动态分配的内存空间,调用对象关联类型的析构函数
- 只能操作指针类型对象
- 单个对象使用delete运算符,但多个对象的数组则需要使用delete[]运算符
#include <iostream>
int main() {
int* y = new int(10);
// 释放指针指向的单个对象的内存,调用对象的析构函数
delete y;
int *a = new int[10]{1, 2, 3, 4};
// 释放指针指向的数组对象所有内存,遍历依次调用数组中元素对应的析构函数
delete[] a;
}
使用场景:动态分配的内存空间(存储空间)不在需要时