dictionaries?
-
danke euch.....
seh ich das richtig das set eigentlich eine sortierte list und multiset eine sortierte liste mit duplikaten ist?
was ich brauche ist ja eigentlich ein dictionary um auf einne schüssel auf eine liste zuzugreifen...
-
std::map
-
hmm irgndwie stelle ich mich dumm an...
wenn ich pflanze:(baum,blume,grashalm) speichern will in einer map...
das geht doch nur dann in ner multimap weil ich ja immer einen key und einen wert haben muss. und dann muss ich irgendwie drüber iterieren wenn ich nur baum, blume, grashalm herauslesen will...kann ich denn nicht einfach die liste zurückbekommen wenn ich den key pflanze angebe?
-
Doch geht auch: std::map< std::string, std::list< std::string > >
Oder statt list nen vector, wenn der passender ist.
-
ah danke..
jetzt muss ich nur noch wissen wie man in die map hineinschreibt......bei der form....komm ich noch nicht drauf....naja ich versuchs weiter
-
std::map< std::string, std::list< std::string > > m; m["Pflanze"].push_back("Baum"); m["Pflanze"].push_back("Blume"); m["Auto"].push_back("VW"); m["Auto"].push_back("Audi"); m["Auto"].push_back("BMW");
-
void ausgeben(std::map< std::string, std::list< std::string > > theMap, const std::string& key) { std::map< std::string, std::list< std::string > >::iterator mapIterator = theMap.find(key); if(mapIterator != theMap.end()) { std::list<std::string>& theList = mapIterator->second; std::list<std::string>::const_iterator listItererator = theList.begin(); for(; listItererator != theList.end(); ++listItererator) { std::cout << *listItererator << std::endl; } } }
-
uff,
da bleibt nur danke zu sagen!
-
ich denke mal multimap wäre da geeigneter! oder ist es wichtig das die reihenfolge erhalten bleibt?
-
Ausgabe von Containern auf nen Stream geht mit copy() + ostream_iterator sehr viel komfortabler
