我的数组:
int (*arr)[100] = new int[100][100];
我应该如何正确地删除它?
编辑: 我知道删除的操作,但是我不确定是否应该像这样删除。
delete[] arr;
or like this
for(int i = 0; i < 100; i++) {
delete[] arr[i];
}
delete[] arr;
我的数组:
int (*arr)[100] = new int[100][100];
我应该如何正确地删除它?
编辑: 我知道删除的操作,但是我不确定是否应该像这样删除。
delete[] arr;
or like this
for(int i = 0; i < 100; i++) {
delete[] arr[i];
}
delete[] arr;
一个简单的delete[] arr;
就可以了。
无论你释放new int[100][100][100][100]
还是new int[100]
,都使用delete[] x;
。如果是单个对象,则使用delete x;
。
new
,请考虑使用auto arr = new int[100][100];
使类型名称更易读。 - Carl