array von pair benutzen
-
Hallo,
ich möchte folgendes implementieren:
[cpp][/code]
#include <string>
#include <iostream>
#include <fstream>
#include <utility>using namespace std;
int main(){
pair<string, string> meinarray[1];
ofstream myFile("c:/out.txt");
// Creates an ofstream object named myFilemeinarray[0].first = ("Hallo");
meinarray[0].second = ("Christoph");
meinarray[1].first = ("Du bist");
meinarray[1].second = ("super");if (! myFile) // Always test file open
{
cout << "Error opening output file" << endl;
return -1;
}myFile << meinarray[0].first << "\t";
myFile << meinarray[0].second << endl;myFile << meinarray[1].first << "\t";
myFile << meinarray[1].second << endl;myFile.close();
}leider funktioniert das so nicht. Wo liegt der Fehler?
Wenn ich nur das erste Feld meinarray[0]. belege und abfrage funktioniert es!Ich möchte Wertepaare mit pair in einem array speichern um das dann in eine datei zu schreiben und auch wieder auslesen zu können.
Gruss
Christoph
(email: christ.richter@gmx.de)
-
Hallo
Wenn du zwei Stellen in deinem Feld willst, musst du das auch ansagen:
std::pair<std::string, std::string> Pairs[2];und nicht Pairs[1];
Dann kannst du auf Pairs[0] und Pairs[1] zugreifen.
chrische
-
danke,
so funktionierts.
Aber warum? ein array fängt doch bei index 0 an.
Demnach bin ich davon ausgegangen das meinarray[1]
index 0 und index 1 besitzt.Denke ich da falsch?
Gruss
Christoph
-
Hallo
Du musst erstmal sagen wieviele Stellen du willst: also zum Beispiel 5. Dann kanst du auf 5 Stellen zugreifen (0,1,2,3,4).
chrische
-
danke dir!
Christoph