所以我创建了一个父类,我称之为Parent
具有Square*
网格成员变量的父类。网格变量是指向包含key
成员变量的大型 Squares 数组的指针。(把这个项目想象成一个哈希表)问题是我在Parent
类中创建一个函数来编辑数组中的关键变量Square
,并得到一个错误。这行代码编译:
this->grid = new Square[row*col];
但这行不编译:
this->grid[i*col + j]->key1 = j;
它强调this
并说表达式必须具有指针类型。我想知道是否有人对我可能做错了什么有想法?
void Parent::initialize(int row,int col) {
this->grid = new Square[row*col];
for(int i = 0; i < row; i++) {
for(int j = 0;j < col; j++) {
this->grid[i*col + j]->key1 = j;
this->grid[i*col + j]->key2 = i;
}
}