Eine Karte ist ein spezieller Containertyp in C++, bei dem jedes Element ein Paar aus zwei Werten ist, nämlich einem Schlüsselwert und einem Kartenwert. Der Schlüsselwert wird zum Indizieren jedes Elements verwendet, und der zugeordnete Wert ist der mit dem Schlüssel verknüpfte Wert. Unabhängig davon, ob der zugeordnete Wert eindeutig ist, ist der Schlüssel immer eindeutig. Um Kartenelemente in C++ zu drucken, müssen wir Iteratoren verwenden. Ein Element in einer Menge von Elementen wird durch ein Iteratorobjekt angegeben. Iteratoren werden hauptsächlich mit Arrays und anderen Arten von Containern (z. B. Vektoren) verwendet und verfügen über einen bestimmten Satz von Operationen, mit denen bestimmte Elemente innerhalb eines bestimmten Bereichs identifiziert werden können. Iteratoren können inkrementiert oder dekrementiert werden, um auf verschiedene Elemente in einem Bereich oder Container zu verweisen. Der Iterator zeigt auf den Speicherort eines bestimmten Elements im Bereich.
Schauen wir uns zunächst die Syntax zum Definieren eines Iterators zum Drucken einer Karte an.
map<datatype, datatype> myMap; map<datatype, datatype > :: iterator it; for (it = myMap.begin(); it < myMap.end(); it++) cout << itr->first << ": " << itr->second << endl;
Die Alternative ist diese -
map<datatype, datatype> mmap; for (auto itr = my.begin(); itr != mmap.end(); ++itr) { cout << itr->first << ": " << itr->second << endl; }
Lassen Sie uns ein Beispiel mit beiden Methoden geben -
#include <iostream> #include <map> using namespace std; int main() { //initialising the map map <string, string> mmap = {{"City", "Berlin"}, {"Country", "Germany"}, {"Continent", "Europe"}}; map <string, string>::iterator itr; //iterating through the contents for (itr = mmap.begin(); itr != mmap.end(); ++itr) { cout << itr->first << ": " << itr->second << endl; } return 0; }
City: Berlin Continent: Europe Country: Germany
Verwenden Sie die zweite Methode -
#include <iostream> #include <map> using namespace std; int main() { //initialising the map map <string, string> mmap = {{"City", "London"}, {"Country", "UK"}, {"Continent", "Europe"}}; //iterating through the contents for (auto itr = mmap.begin(); itr != mmap.end(); ++itr) { cout << itr->first << ": " << itr->second << endl; } return 0; }
City: London Continent: Europe Country: UK
Um den Inhalt einer Karte in C++ anzuzeigen, müssen wir Iteratoren verwenden, sonst wird es schwierig, die Werte auszudrucken. Es ist einfach, alle Einträge in einer Karte zu durchlaufen und ihre Werte mithilfe eines Iterators anzuzeigen.
Das obige ist der detaillierte Inhalt vonC++-Programm zum Drucken eines Wörterbuchs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!