'Variablenname' kann nicht in einem konstanten Ausdruck c ++ vorkommen

8

Wer weiß schon, was dieser Fehler eigentlich bedeuten könnte? Ich stolpere über ein bisschen Code, der das nicht zu umgehen scheint. Ich habe es mit nur h * 2 anstelle von hprime versucht, und nur w * 2 statt wprime. Jedes Mal bekomme ich den gleichen Compiler (g ++ Compiler) Fehler von:

grid.cpp: Im Konstruktor 'Grid :: Grid (int, int)':

grid.cpp: 34: Fehler: 'hprime' kann nicht in einem Konstantenausdruck erscheinen

(der Compiler sagt nicht immer hprime, es wird sagen, welche Variable dort ist, sei es h oder hprime oder width). Jede Hilfe würde sehr geschätzt werden!

%Vor%     
Captaindh00m 01.10.2009, 03:34
quelle

1 Antwort

22

Sie können new nicht dazu verwenden, ein zweidimensionales Array zuzuweisen, aber Sie können die Zeile wie folgt ändern:

%Vor%

Wenn nicht mehrdimensional ist, können Sie tun:

%Vor%

und indexiere es einfach wie

%Vor%

wo Sie es normalerweise indexieren würden wie

%Vor%     
Mark Rushakoff 01.10.2009, 03:43
quelle

Tags und Links