Ich muss eine multimap<int,string>
aus einer Datei lesen, und ich kann nicht herausfinden, wie es geht.Lesen einer Multimap <int, string> aus einer Datei
ifstream in ("words.txt");
multimap<int, string> words;
int count = 0;
while (!in.eof()) {
getline(in, words[count]);
count++;
}
Wenn ich es laufen bekomme ich diesen Fehler error: no match for ‘operator[]’ (operand types are ‘std::multimap<int, std::__cxx11::basic_string<char> >’ and ‘int’) getline(in, words[count]);
ich mit in >> words[count]
versucht, und es nicht arbeiten. Wie soll ich das beheben?
Nicht direkt mit Ihrem Fehler verbunden, aber bevor es Sie beißt: [Verwenden Sie nicht 'eof()' als eine Schleifenbedingung] (http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside -a-loop-Bedingung-als falsch angesehen. – Quentin
a) nicht während while (! In.eof), google es youll finden eine Antwort auf stackoverflow b) multimap [scheint nicht diesen Operator] (http://en.cppreference.com/w/cpp/container/multimap) – Borgleader