2016-03-25 8 views
-2

Ich bin neu in C++ und versuche, Integer aus einer Map mit Strings als Schlüssel zu speichern und zu lesen. Diese Frage wird wahrscheinlich dupliziert, aber ich habe viele Möglichkeiten, und keiner von ihnen arbeitete:/C++ Liste mit Zeichenfolge als Schlüssel

Danke für deine Hilfe :)

Spezifische Frage: Wie speichern Sie und Objekte aus einer Karte erhalten, während String als Schlüssel und doppelte Einträge vermeiden?

#include <map> 
std::map<std::string, int> relation_map; 
void setRelationState(std::string guid, int rel){ 
    if (relation_map.find(guid) != relation_map.end()){ 
     std::map<std::string, int>::iterator it = relation_map.find(guid); 
     it->second = rel; 
     return; 
    } 
    relation_map.insert(pair<std::string, int>(guid, rel)); 
} 
int getRelationState(std::string guid){ 
    if (relation_map.find(guid) != relation_map.end())return relation_map[guid]; 
    return 1; 
} 
+1

Lesen Sie mehr über 'map :: operator []'. –

+1

Was ist die Frage? –

+0

Was ist der Fehler? –

Antwort

1

Willkommen in C++, verwenden Sie bitte den folgenden Code als refernce, die Dinge zu tun, u wollen .. // Deklarieren Karte

std::map <int, std::string> stdBindList; 
std::map <int, std::string>::iterator pos; 

//Add Elements 

stdBindList.insert (std::pair<int,std::string>(15,”a”)); // 1 
stdBindList.insert (std::pair<int,std::string>(22,”b”)); // 2 

stdBindList.insert (std::pair<int,std::string>(12,”c”)); // 3 
stdBindList.insert (std::pair<int,std::string>(15,”d”)); // 4 
stdBindList.insert (std::pair<int,std::string>(5,”e”)); // 5 
stdBindList.insert (std::pair<int,std::string>(5,”f”)); // 6 
stdBindList.insert (std::pair<int,std::string>(2,”g”)); // 7 

stdBindList.insert (std::pair<int,std::string>(5,”h”)); // 8 
stdBindList.insert (std::pair<int,std::string>(5,”i”)); // 9 

//iterate and print 

for (pos = stdBindList.begin();pos!=stdBindList.end();pos++) 
{ 

} 
+0

Vielen Dank für Ihre Referenz. Ich habe versucht, es zu benutzen, aber ich denke, ich habe etwas falsch gemacht: http://pastebin.com/AQTKfKgp – Friwi

Verwandte Themen