错误:数组下标的类型"const bool[int]"无效

error: invalid types ‘const bool[int]’ for array subscript

本文关键字:quot bool int 无效 const 类型 数组 错误 下标      更新时间:2023-10-16

有人可以帮助我吗? 我不知道我必须改变什么。我想创建一个2D网格和其他一些东西。

这是我的代码中最重要的部分。

#include <ncurses.h>
bool cells;
const MAX_GRID_SIZE;
//_________________________________________________
void initializeGame() {
initscr();
cbreak();
noecho();
curs_set(false);
nodelay(stdscr, true);
keypad(stdscr, true);
mousemask(ALL_MOUSE_EVENTS, NULL);
// Cells (0 = false, 1 = true).
MAX_GRID_SIZE = 500
cells[MAX_GRID_SIZE][MAX_GRID_SIZE] = { 0 };
}
//_________________________________________________
void showState() {
while (true) {
MEVENT event;
int key = getch();
if (key == KEY_MOUSE) {
if (getmouse(&event) == OK && (event.bstate & BUTTON1_CLICKED)) {
int x = event.x;
int y = event.y;
mvprintw(0, 0, "Mouse clicked at %d, %dn", x, y);
cells[x][y] = !cells[x][y];
if (cells[x][y] == true) { attron(A_REVERSE); }
mvprintw(y, x, " ");
attroff(A_REVERSE);
refresh();
}
}
}
// Clean up.
endwin();
}

如果cells是2D数组,则声明如下:

const size_t MAX_GRID_SIZE = 500;
bool cells[MAX_GRID_SIZE][MAX_GRID_SIZE] = { 0 };