Array unterschiedlicher Länge in Container speichern
-
Hi mal wieder,
ich steh mal wieder (oder wie immer
) auf dem Schlauch.
Ich möchte in einem Container Arrays mit unterschiedlichen Längen speichern.
Diese Arrays beinhalten einfach nur ints, die als Optionen für andere Aktionen benutzt werden.Jetzt würde ich gern wissen, welcher Container dafür am besten ist (vector,map,...) und gegebenfalls wie ich auf die Arraywerte zugreife. Der Zugriff ist an sich nicht mein Problem, aber es gibt wahrscheinlich bessere/elegantere Lösungen als meine
.VG
Cherup
-
std::vector<std::vector<int>>
-
Optionen für andere Aktionen
das ist etwas ungenau
-
Ein Array enthält z.B. {5, 25} als Optionen für eine Funktion, die mit rand() arbeitet und eine Zufallszahl innerhalb dieser Grenzen erstellt, ein anderes Array enthält {3,6,4,20,5} als Optionen für eine Funktion, die Bereiche von 2 strings zrückgibt und damit eine switch-case Anweisung durchführt, bei der 5 gewählt werden soll.
Das sind jetzt nur Beispiele, die man auch durch die Übergabe der Optionen beim Funktionsaufruf lösen kann.
Im wesentlichen sollen in dem Container alle Optionen für das Programm gespeichert werden, weil sie zum Teil noch nicht bekannt sind (kommen teilweise aus Dateien) oder eben variabel sind und nicht fest im Code stehen sollen.Edit:
Wie genau komme ich denn an ein Element, wenn ich vector<vector<int>> nutze?
Beispiel:vector<vector<int>> a; vector<int> b; b.push_back(5); b.push_back(25); a.push_back(b); int c = a[1][1]; //so richtig? sieht falsch ausVG
Cherup
-
Zu deinem Stück Quellcode, der ist schon richtig.
-
Skym0sh0 schrieb:
Zu deinem Stück Quellcode, der ist schon richtig.
Nein, an a[1] befindet sich nichts. Es müsste a[0][1] heißen.
-
Okay, ist syntaktisch in Ordnung
