2-(oder mehr-)dimensionale Arrays per vektor vom vektor?
-
Hallo zusammen!
Ich suche nach einer Möglichkeit mehrdimensionale, dynamische Arrays zu erstellen. Dazu habe ich beim Thema 'dynamische Arrays' Hinweise zu std::vektor gefunden. Meine Idee ist also, einen Vektor von einem Vektor zu erstellen, aber mit dem Syntax will es nicht so richtig klappen...
//So, war es gedacht, aber so läuft es nicht: vector<vector<int> reihe> feld;Natürlich ist es kein Problem auch mit einem einzelnen Vektorfeld der Größe Länge*Breite zu arbeiten und dann über [X * Länge + Y] darauf zuzugreifen, aber ein Vektor von einem Vektor wäre natürlich übersichtlicher. Lässt sich soetwas machen? Und falls ja, welche Variante ist schneller?
-
vector<vector<int> > feld;Man beachte das Leerzeichen zwischen den beiden '>', ohne welchem der Compiler hier einen operator >> sehen würde.
-
Hey danke, das ist gut! Aber wie greift man denn jetzt auf den inneren Vektor zu?
-
Einfach so:
feld[ x ][ y ];
-
Okay, schon fast perfekt
Jetzt nur noch: Wie funktioniert das mit dem Resize?
-
feld.resize(1000); feld[0].resize(1000);