gpt4 book ai didi

c++ - delete[] arr 和循环删除元素有什么区别

转载 作者:行者123 更新时间:2023-11-27 23:05:24 28 4
gpt4 key购买 nike

<分区>

上下文:我需要将所有元素从一个数组移动到一个新数组。复制后旧数组将被销毁。

代码:

int* array = new int[5];
int* newArray = new int[5];

方案一:在循环中销毁元素

for (int i = 0; i < 5; ++i) {
newArray[i] = array[i];
delete (array + i);
}

选项 2:使用 delete[]

for (int i = 0; i < 5; ++i) {
newArray[i] = array[i];
}
delete[] array;

问题:有什么不同? delete[] 是否比 option1 更有效(delete[] 是否会破坏内存块而不是逐个元素地删除?)?

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com