📜  在C++ STL中列出delete()函数(1)

📅  最后修改于: 2023-12-03 15:07:52.248000             🧑  作者: Mango

在C++ STL中delete()函数

在C++ STL中,delete()函数用于释放动态分配的内存。可以使用delete单个对象,也可以使用delete[]释放动态数组。

delete
delete pointer;

delete函数用于释放单个对象,其中pointer为指向动态分配内存的指针。例如:

int* ptr = new int;
//使用ptr
delete ptr;
delete[]
delete[] array;

delete[]函数用于释放动态数组,其中array是指向动态分配内存的指针。例如:

int* ptr = new int[5];
//使用ptr
delete[] ptr;

注意,当使用delete或delete[]释放动态分配内存时,必须确保指针指向已分配的内存。如果尝试释放未分配或已释放的内存,则会导致未定义的行为。

另外,如果对象具有指向其他动态分配内存的指针,则必须在删除对象之前先删除这些指针指向的内存。

总结

delete和delete[]函数用于释放动态分配的内存,可以避免内存泄漏和资源占用。但是在使用时需要注意指针指向的内存是否已经分配,以及是否需要先删除指针指向的其他动态分配内存。