好吧我卡在我的程序的特定部分。 我試圖根據它在2D數組中的位置來繪製矩形迭代和繪圖C++
2D數組存儲我試圖使用畫布繪製的迷宮(以文本/字符形式)。 例如,它存儲這樣的:
AAAAAAAAAAAAAAAAAAA
A A
A A
A A
A A
A A
A A
AAAAAAAAAAAAAAAAAAA
我曾寫過這樣我的代碼:
void MazeGame::DrawMap(Canvas &canvas, char (&map)[26][20])
{
double drawx = 200;
double drawy = 200;
for(int i = 0; i < 20; i++)
{
for(int j = 0; j < 26; j++)
{
if(map[i][j] == 'A')
{
drawx+=10;
drawy+=10;
canvas.DrawFillRect(drawx*j, drawy, 10, 10);
}
}
}
在canvas.DrawFillRect參數,前兩個參數是x & y座標/值和最後兩個是寬度&矩形的長度
有人告訴我,我的錯誤是,我沒有修改drawx和drawy,而是修改我& j 。我知道我需要在DrawFillRect的參數中,但是我只是沒有看到任何其他寫這個的方式,而沒有它看起來要修改我& j。
我想,如果我修改drawx & drawy,它會得出正確的迷宮
有什麼建議?真的卡住了這一點,我不是很擅長C++
小心你的範圍在'我和j'。 'i'應該取26的範圍,或者參數必須是'char map [20] [26]'。 – mr5