在C++中,要正確刪除數組,首先需要使用delete[]
操作符來釋放數組所占用的內存空間。使用delete
操作符只會釋放數組中第一個元素所占用的內存空間,而不會釋放整個數組所占用的內存空間,可能導致內存泄漏。
正確使用delete[]
操作符的示例代碼如下:
int* arr = new int[5];
// 使用數組
delete[] arr;
在上面的示例中,我們首先使用new
操作符為整型數組arr
分配了5個元素的內存空間,然后使用delete[]
操作符釋放了數組arr
所占用的內存空間。
另外,為了避免數組被刪除之后仍然被訪問,建議在釋放數組內存空間之后將指針設置為nullptr
,如下所示:
int* arr = new int[5];
// 使用數組
delete[] arr;
arr = nullptr;
這樣可以避免在之后意外訪問已經釋放的內存空間。