Variablen (vector) zur Laufzeit erstellen -> Alternative Lösungsmöglichkeit?!
-
Hallo,
ich habe folgendes Problem. Aus einer Konfigurationsdatei sollen z.B. folgende Daten ausgelesen werden.
x1 = y1; x2 = y2; x3 = y3; usw.Die klappt auch problemlos, die Werte x1, y1 usw. werden in einer "map" abgelegt. Nun soll für jedes xn ein vector erstellt werden in etwa so:
vector<double> x1 = readCSV("ready.csv", y1); vector<double> x2 = readCSV("ready.csv", y2); vector<double> x3 = readCSV("ready.csv", y3);Wie kann ich das am besten realisieren. Soweit ich weiß ist es nicht möglich zur Laufzeit Variablen zu erstellen. Wie könnte man hier alternativ vorgehen?
-
vector<vector<double>>?Soweit ich weiß ist es nicht möglich zur Laufzeit Variablen zu erstellen.
Doch. Das ist sogar für so ziemlich jedes nicht-trivale Programm nötig. vector ist bloß eine von vielen Möglichkeiten.
-
Wie würde ich das denn genau angehen, dass ist mir noch nicht so wirklich klar. Nehmen wir an ich habe 100 Wert-Variablenpaare, sprich x1 bis x100 und y1 bis y100.
Nun soll für jedes x genau diese Zeile ins Programm geschrieben werden
vector<double> xn = readCSV("ready.csv", yn);
-
Das hat Sepp Dir doch schon beantwortet: vector<vector<double>>
-
Nehmen wir an ich habe 100 Wert-Variablenpaare, sprich x1 bis x100 und y1 bis y100.
std::vector<std::pair<double, double>>oder
std::map<double, double>Je nach dem ob er den X-Wert auch veränderbar haben möchte oder nicht.
-
vector<vector<double>> ist keine gute Idee. Die eine Dimension steht ja schon fest (2), dynamische Speicherverwaltung ist dafür massiver Overkill.