gpt4 book ai didi

c++ - 删除指向二维数组的指针

转载 作者:行者123 更新时间:2023-11-28 07:52:17 27 4
gpt4 key购买 nike

我有一个指向 Robot 类的二维数组的指针

Robot ***rob; 

下面是我的构造函数代码。构造函数工作正常,但现在我正在尝试构建一个析构函数来删除这个指针,它一直在使程序崩溃!

我的问题是,如何删除指向二维机器人数组的指针?

RobotsWorld::RobotsWorld(int x , int y)
{
X=x;Y=y; // returns the limitation of the matrix
rob = new Robot**[x];
for(int i = 0; i < x; i++)
{
rob[i] = new Robot*[y];

for(int j = 0; j < y; j++)
{
rob[i][j] = NULL;
}
}
}

最佳答案

// Code is not tested
for(int i = 0 ; i < x ; ++i)
{
for(int j = 0 ; j < y ; ++j)
{
delete rob[i][j];
}
delete[] rob[i];
}
delete[] rob;

顺便问一下,为什么要设置 rob[i][j] = NULL;

我认为应该是:rob[i][j] = new double;

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

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