2 dimensionaler vector, wie Anzahl "Zeilen" und "Spalten" ermitteln?
-
Moin, Moin,
ich kann ja mit
vector<vector<string> > test;
einen 2 dimensionalen Vector erstellen. In diesen kann ich Daten in der Form
test[i][j]=irgendwas;
schreiben. Soweit hab ich das schon begriffen.
Bei einem einfachen Vector kann ich Mittels
test.size()
die Anzahl der Elemente feststellen, ist mir auch klar.
Aber wie mach ich es bei einem 2 dimensionalen, um zu einer bestimmten Zeile die Anzahl der Elemente zu kriegen?
Oder auch mit derpush_back()
Anweisung einen Wert in einer bestimmten Zeile anzuhängen?
push_back(i)(j)
klappt ja nicht so wirklich.
-
In diesen kann ich Daten in der Form C/C++ Code:
test[i][j]=irgendwas;
schreiben.
Falls die Entsprechende Zeile und Spalte vorhanden ist ja.
Bei einem einfachen Vector kann ich Mittels C/C++ Code:
test.size()
die Anzahl der Elemente feststellen, ist mir auch klar.
Aber wie mach ich es bei einem 2 dimensionalen, um zu einer bestimmten Zeile die Anzahl der Elemente zu kriegen?
test[i].size()
Dementsprechende auch das puschen:
test[i].push_back(foo)
-
Geier0815 schrieb:
Bei einem einfachen Vector kann ich Mittels
test.size()
die Anzahl der Elemente feststellen, ist mir auch klar.
Aber wie mach ich es bei einem 2 dimensionalen, um zu einer bestimmten Zeile die Anzahl der Elemente zu kriegen?
test[i].size();
Geier0815 schrieb:
Oder auch mit der
push_back()
Anweisung einen Wert in einer bestimmten Zeile anzuhängen?
push_back(i)(j)
klappt ja nicht so wirklich.
test[i].push_back(wert);
MfG Jester
-
Ich ware schneller. Ich war schneller. :p
-
Du Sack!
-
Ich danke euch schon mal so weit.
Vielleicht könnt ihr mir auch sagen, weshalb ich bei dem fogenden Aufruf einen Fehler beim Ausführen bekomme:vector<vector<string> > test; test[0][0]="Name"; test[0][1]="Vorname"; test[0][2]="Strasse"; cout<<test[0].size();
Kompillieren läßt es sich ohne Probleme, aber wenn ich es dann ausführen will, bekomm ich so eine Fehlermeldung:
10 [main] spar 1056 handle-exceptions: Exception: STATUS_ACCES_VIOLATION
4503 [main] spar 1056 open_stackdumpfile: Dumping stack trace to spar.exe.stackdump
-
Die Antwort findest du in meiner erstn Antwort:
helium schrieb:
Falls die Entsprechende Zeile und Spalte vorhanden ist ja.
Die Elemente, die du da bechreibst existieren gar nicht!
-
Die Exception kriegst Du, weil die Vektoren alle noch Größe 0 haben und Du auf nicht existierende Elemente zugreifst. Du mußt die Vektoren schon noch mittels push_back oder resize vergrößern.
MfG Jester
-
*Hmpf*
-