의 배열에 대한 포인터를 만들어 그리드에 대한 포인터를 만들려면 어떻게해야합니까어떻게 내가 블록에 대한 포인터의 2 차원 배열을 객체 포인터
Block* grid[GRID_COLUMNS][GRID_ROWS];
for (int i=0; i>GRID_COLUMNS; i++)
{
for (int k=0; k>GRID_ROWS; k++)
{
grid[i][k] = NULL;
}
}
객체합니까?
??? // create pointer to grid here
myBlock.ShiftDown(???); // pass pointer to grid to the function
myBlock.ShiftDown의 함수 정의입니다. 나는 무엇 대신에 넣어야합니까 ??? 이 일을하기 위해서?
편집 : 여기서 내가하려는 것은 Block :: ShiftDown이 그리드를 조작하도록하는 것입니다. 이 작업을 수행하는 더 쉬운 방법이 있다면 나는 그것에 대해 듣고 싶습니다.
void Block::ShiftDown(Block* g[GRID_COLUMNS][GRID_ROWS])
{
if (row == GRID_ROWS)
g[column][row] = this;
else
row++;
}
과 전화 : 문제와 무엇
귀하의'ShiftDown' 함수는 배열 범위 바깥쪽에 씁니다. – interjay