Probleme mit map
-
Moinsen!
Ich habe ein Problem mit std::map. Wie kann ich denn auf das erste Element des Vektors zu greifen, bzw. auf jedes beliebige? Ich habe das mit den Iteratoren noch nicht so wirklich verstanden. Kann mir jemand ein kleines Bsp geben, wie ich auf das erste Elemente, bzw. x-beliebige zugreifen kann?
Danke im voraus
-
Hier wird alles schön erklärt:
http://magazin.c-plusplus.net/artikel/Aufbau der STL - Teil 1%3A Container
und
http://magazin.c-plusplus.net/artikel/Aufbau der STL - Teil 2%3A Iteratoren und Algorithmen
-
Dieser Thread wurde von Moderator/in Jochen Kalmbach aus dem Forum C++/CLI mit .NET in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
SiMMeOne schrieb:
Ich habe ein Problem mit std::map. Wie kann ich denn auf das erste Element des Vektors zu greifen, bzw. auf jedes beliebige?
Was jetzt?
std::mapoderstd::vector? Eine Map hat nicht den Sinn, Random Access zu bieten. Lies dir die von _matze verlinkten Artikel (v.a. den über Container durch) und schau als Ergänzung bei www.cplusplus.com nach.
-
Danke!
-
Nochmal ganz deutlich: eine std::map lässt dich nur über iteratoren auf jedes beliebige Element zugreifen, und vor allem sortiert sie deine Elemente! Willst du das auch? Wenn du einfach nur einen Array-Ersatz willst, nimm einfach std::vector.
-
_matze schrieb:
Nochmal ganz deutlich: eine std::map lässt dich nur über iteratoren auf jedes beliebige Element zugreifen, und vor allem sortiert sie deine Elemente! Willst du das auch? Wenn du einfach nur einen Array-Ersatz willst, nimm einfach std::vector.
Oder
std::tr1::array
-
drakon schrieb:
_matze schrieb:
Nochmal ganz deutlich: eine std::map lässt dich nur über iteratoren auf jedes beliebige Element zugreifen, und vor allem sortiert sie deine Elemente! Willst du das auch? Wenn du einfach nur einen Array-Ersatz willst, nimm einfach std::vector.
Oder
std::tr1::array
Oder std::tr1::unordered_map, std::set, std::tr1::unordered_set, .... Ohne infos ist es müßig zu raten warum er welchen Container benutzen sollte.