gpt4 book ai didi

c++ - 删除指向指针的指针(作为数组数组)

转载 作者:IT老高 更新时间:2023-10-28 12:44:19 24 4
gpt4 key购买 nike

我的代码中有这个:

double** desc = new double* [size_out];
for (int i = 0; i < size_out; i++)
desc[i] = new double [size_in];

如何删除这个desc

我应该这样做:

delete [] desc;

for (int i=0; i<size_out; i++)
delete [] desc[i];
delete [] desc;

for (int i=0; i<size_out; i++)
delete [] desc[i];
delete desc;

?

最佳答案

要遵循的简单规则:

  • 对于每个分配,都必须有一个释放(因此 ex1 是错误的)
  • 使用 new 分配的内容应该使用 delete 释放,使用 new[] 应该使用 delete[] 和使用 malloc 应该使用 free 释放(因此 ex3 是错误的)

结论,ex2是可以的。

关于c++ - 删除指向指针的指针(作为数组数组),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4193982/

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