Кто-нибудь знает, что на самом деле может означать эта ошибка? Я использую немного кода, который не может обойтись. Я пробовал только с h * 2 вместо hprime и просто с w * 2 вместо wprime. Каждый раз, когда я получаю одну и ту же ошибку компилятора (g ++ compiler):
grid.cpp: в конструкторе rid Grid :: Grid (int, int) ’:
grid.cpp: 34: ошибка: «hprime» не может появляться в константном выражении
(компилятор не всегда говорит hprime, он говорит, какая бы переменная ни была, будь то h или hprime или width). Любая помощь будет принята с благодарностью!
class Grid
{
public:
Grid(int x, int y);
~Grid();
void addObstacle(int w, int h);
void toString();
int** grid;
int height;
int width;
};
Grid::Grid(int w, int h)
{
width = w;
height = h;
const int hprime = h*2;
const int wprime = w*2;
grid = new int[wprime][hprime];
for(int x=0;x<wprime;x++) {
for (int y=0; y<hprime;y++) {
grid[x][y] = 0;<br>
}
}
}