gpt4 book ai didi

c++ - C++ 中的二维对象数组?

转载 作者:行者123 更新时间:2023-11-28 08:04:45 25 4
gpt4 key购买 nike

二维数组如:Cell **scoreTable。分配后:

scoreTable = new Ceil*[10]; 
for(int i = 0 ;i<10;i++)
scoreTable[i] = new Ceil[9];

我想像这样保存值:scoreTable[i][j]= new Ceil(i,j) 在堆中,这在 c++ 中不起作用。感谢您的帮助。

最佳答案

scoreTable[i][j]= new Ceil(i,j)。您正在尝试将 Cell* 放入 Cell。

你必须创建二维指针数组:

auto scoreTable = new Ceil**[10]; 
for(int i = 0 ;i<10;i++)
scoreTable[i] = new Ceil*[9];

但更好的是使用vector:

std::vector< std::vector<Ceil*> > table;
table.resize(10);
for (int i = 0; i < 10; ++i)
{
table[i].resize(9, NULL);
}
table[3][4] = new Ceil();

关于c++ - C++ 中的二维对象数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10496404/

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