Erstellen von n Vektoren mittels Funktion
-
hallo liebe C++ Mitstreiter,
ich möchte eine Anzahl n Vektoren erstellen, die Variable n wird beim Dateneinlesen definiert.
die vektoren sollten dann namen wie etwa V0, V1, V2, V3, ..., Vn erhalten.leider funktioniert das anscheinend nicht so einfach wie ich mir das vorgestellt hatte. anscheinend kann man bei der vektordeklaration keine variable übergeben.
mein ansatz war:
for (unsigned int i=0; i<n; i++){
vector<int> i;
}Das funktionieren leider nicht.
weiss jemand von Euch wie man einem vektor noch eine laufnummer umhängen kann, sodass automatisiert n vektoren herauskommen?
LG
Don Gunito
-
http://www.cppreference.com/cppvector/vector_constructors.html
Auch sonst sehr nützlich Seite.

-
Du könntest das folgendermassen machen:
std::vector<std::vector<int> > vv; for (int i = 0; i < 10; ++i) { std::vector<int> v; // v z.B. noch füllen... vv.push_back(v); } // Zugriff auf z.B. v3 std::vector<int>& v3 = vv[3];Gruss Simon
Edit: Zugriff auf v3 erklärt.
-
sorry, kapier ich nicht....
ich denke das du den vektor vv mit den vektoren v befüllst.....das hab ich verstanden.
aber die letzte zeile verstehe ich nicht, kannst du die erläutern?
std::vector<int>& v3 = vv[3];
-
was nicht?
-
Don_Gunito schrieb:
sorry, kapier ich nicht....
ich denke das du den vektor vv mit den vektoren v befüllst.....das hab ich verstanden.
aber die letzte zeile verstehe ich nicht, kannst du die erläutern?
std::vector<int>& v3 = vv[3];Du holst dir eine Referenz auf den 4ten vector der in vv angelegt wurde. Diese Referenz kannst du dann als Kurzschreibweise benutzen um auf den 4ten Vektor der Liste zuzugreifen.
Du solltest dich zudem ein wenig mit den Grundlagen Scope und Variablen beschäftigen... Variablennamen können auch nicht dynamisch generiert werden.
cu André