Zweidimensionales Array/Klasse Problem
-
Hallo,
ich habe ein Problem mit meinem Programm und zwar habe ich eine Klasse, die unter anderem ein zweidimensionales Array enthält. Dieses Array soll mithilfe des Konstruktors initalisiert werden.Der Code sieht etwa so aus:
Meine_Klasse.h
class Meine_Klasse { private: string mein_array[2][2]; public: Meine_Klasse(); };Meine_Klasse.cpp
#include "Meine_Klasse.h" Meine_Klasse::Meine_Klasse() { mein_array[][] = { {"Bla","Blub"} {"Geht nicht","Alles Doof"} }; }Beim Kompilieren gibt mir DevC++ den Fehler "expected primary-expression before ']' token" aus. Es hat ebenfalls nichts gebracht, die eckigen Klammern mit Zahlen (2) zu füllen oder sie wegzulassen.
Was kann ich tun?
Gruß,
Sebastian
-
const int DIM1 = 3, DIM2 = 3; int matrix [DIM1] [DIM2] = {{1,2,3},{4,5,6}}; cout << matrix[1][2];gibt bei mir "5" aus... edit: "6" natürlich...
du hast das komma zwischen den arrays im array vergessen.gruß
Daniel
-
Es geht nur, einzeln die Werte zuzuweisen, also
mein_array[0][0] = "Bla"; ... mein_array[1][1] = "noch mehr bla";
-
Th schrieb:
Es geht nur, einzeln die Werte zuzuweisen, also
mein_array[0][0] = "Bla"; ... mein_array[1][1] = "noch mehr bla";Mit Sicherheit nicht.
-
Mach:
#include "Meine_Klasse.h" Meine_Klasse::Meine_Klasse() { mein_array[][] = { {"Bla","Blub"}, //<-- KOMMA {"Geht nicht","Alles Doof"} }; }wie Th schon sagte
-
BorisDieKlinge schrieb:
...wie Th schon sagte
ey! ich wars

-
Ich hatte das Komma nur vergessen mit in den Beitrag zu schreiben. Geht daher auch mit Komma nicht.

-
@Sebix:
Lass Dich bloss nicht verwirren die sind hier alle schon gedanklich im Feierabend
@GPC:
Begründen soll helfen
@DanielusITF:
Bei einer Initialisierung klappt das natürlich, aber bei einer Zuweisung eher weniger. Und die Fehlermeldung erscheint schon eine halbe Zeile bevor das vergessene Komma überhaupt zum tragen gekommen ist :p@Th:
Imho das einzige hilfreiche Statement bisher
-
ich hab noch kein Feierabend;) noch lang net

-
GPC schrieb:
Th schrieb:
Es geht nur, einzeln die Werte zuzuweisen, also
mein_array[0][0] = "Bla"; ... mein_array[1][1] = "noch mehr bla";Mit Sicherheit nicht.
Zeigen!

-
Sorry, ich war im Kopf bei nem static Array und dann kann/muss man's ja noch definieren. Aber im Fall vom Op geht's wirklich nicht anders. Schande über mich.