0
我想要手动设置作为类成员的二维数组的值。主要是因为我已经用不同的方法用循环填充它,但是用另一种方法我想用手填充它。使用来自类成员的指针初始化2D数组?
class SomeClass {
private:
int** myArray;
public:
void setMyArray(int /*h*/,int /*w*/);
}
void SomeClass::setMyArray() {
// Something like this:
this->myArray** = { {1,2,3},{3,2,1},{4,5,6}};
}
失败的是,有没有办法产生其尺寸,然后手动填充?
void SomeClass::setMyArray(int height, int width) {
// Something like this:
this->myArray** = new*int[height];
for (0...height, i) {
this->myArray[i] = new[width];
}
myArray** = {{1,2,3},{1,2,3},{1,2,3}};
}
可以初始化数组一样的是,就在你正在声明数组。 – deepmax
这并不完全回答我的问题,请您澄清一下?我如何在我的设置中声明数组,让我手动摆弄这些值? – RaenirSalazar
您可以仅在声明点初始化(通过分配)纯数组。您以后只能通过分配给每个元素来填充数组,而不是分配“整个”。这和成千上万的其他原因是为什么你应该不惜一切代价避免它们。 –