it-swarm.com.de

Können Wörterbücher in C++ verwendet werden

Ich habe Wörterbücher in C # nachgeschlagen, und sie scheinen sehr nützlich zu sein, und ich habe mich gefragt, ob es möglich ist, sie in C++ zu verwenden, da ich versucht habe, Wörterbücher in C++ zu suchen finden können. Gibt es eine Art Bibliothek, die ich herunterladen und in das Projekt aufnehmen könnte, oder gibt es eine Funktion, die dasselbe mit einem anderen Namen tut?.

15
Elliott

In STL gibt es einen entsprechenden Typ, der std::map heißt.

Es hat die gleiche Grundfunktionalität wie ein .NET Dictionary, die Implementierung ist jedoch sehr unterschiedlich. std::map basiert intern auf einer rot-schwarzen Baumdatenstruktur, während Dictionary intern eine Hashtabelle verwendet.

Wenn Sie nur nach etwas suchen, das dasselbe Verhalten aufweist, reicht std::map aus. Wenn Sie jedoch große Datenmengen haben, müssen Sie sich der unterschiedlichen Leistungsmerkmale bewusst sein.

16
Anders Abel

Es gibt std::map für die logarithmische Zugriffszeit (normalerweise basierend auf einer Baumimplementierung) und std::unordered_map (seit C++ 11) für die erwartete konstante, ungünstigste lineare Zugriffszeit (normalerweise basierend auf einer Hash-Implementierung).

8
Angew

std :: map ist wie eine Dictionary.

6
ForEveR

Wir können map in C++ Verwenden. Das grundlegende Format für die Verwendung einer Map lautet - 

    std::map<Key_type, Value_Type> ;

Beispiel -

    std::map<std::string,std::string> x = {{"A","ABC"},{"B","DEF"}}
0