Array in Klasse gibt Syntaxerror
-
Ich habe mir eine kleine Klasse gebastelt und versuche darin ein Array direkt mit werten zu erstellen dabei bekomme ich allerdings einen Syntaxerror für die { , erstelle ich es jedoch im main() dann gehts, kann mir einer sagen wieso das so ist? Oder spielt mein Compiler (VC++) einfach nur verrückt?
class test { private: int array[2]={1,2}; //gibt Syntaxerror }; void main() { int array[2]={1,2}; //gibt keinen Fehler }
-
Du kannst Attributen so keinen Wert zuweisen.
Erstelle stattdessen einfach einen Konstruktor:class test { private: int array[2]; test(){ //Weise die Werte zu } }; void main() { //Bla }EDIT: Verdammter Browser *gr*
-
Als Alternative könntest du ein statisches Array verwenden (dann arbeiten aber alle Objekte deiner Klasse mit den selben Daten - du mußt also selber wissen, ob das das richtige für dich ist):
class test { static int array[2] ... }; int test::array[2] = {1,2};PS: Das heißt übrigens "int main()".
-
Danke für die Antworten das mit dem Konstruktor hat mir gefehlt.