Array in vector
-
Hallo,
ich möchte in C++ ein 3-Dimensionales Array in einen Vector speichern, aber irgendwie will er nicht...Bsp:
vector<int[3]> tempvar2;
int dummy2[3];
dummy2[0] = 1;
dummy2[1] = 2;
dummy2[2] = 3;tempvar2.push_back(dummy2);
Könnt Ihr mir weiterhelfen? Is sicherlich nicht schwer für euch.
Übrigens möchte ich keinen Vector in einen anderen schieben- es muss unbedingt ein array[3] sein.Danke schonmal
-
Das geht leider genau so wenig wie
int a [2], b [2] = a;
. Du könntest stattdessen abervector<int*>
verwenden. Dann musst du aber sicherstellen, dass das Array auch so lange existiert wie dervector
, da sonst der Pointer ungültig wird.
-
Ahh spitze genau sowas hab ich gesucht
nur noch eine kleine Frage wie mach ich ihm dann klar, dass der zeiger ein array ist, wenn ich die Daten wieder zurückhole.
Zur Zeit kommt noch der Fehler int * kann nicht in int[3] konvertiert werdenDanke für Eure Hilfe
-
OK ich habs!
Das ganze ist zwar mehr als nur unsicher, aber ich brauch das leider so.
Vielen Dank für die Hilfe- wenn ihr ne Idee habt wie man das bissl schicker machen kann, dann nur her damit...tempvar2.push_back(dummy2);
int t[3] ;
t[0] = (tempvar2.at(0))[0];
t[1] = (tempvar2.at(0))[1];
t[2] = (tempvar2.at(0))[2];
-
Wieso nicht einfach:
tempvar2.push_back(dummy2); int *t = tempvar2.at (0);