C++ 程序打印字典
在 C++ 中,映射是一种特殊的容器,其中每个元素都是一对两个值,即键值和映射值。键值用于索引每个项目,映射值是与键关联的值。键始终是唯一的,而不管映射值是否唯一。要在 C++ 中打印映射元素,我们必须使用迭代器。迭代器对象指示一组项目中的一个元素。迭代器主要与数组和其他类型的容器(如向量)一起使用,并且具有一组特定的操作,这些操作可用于识别特定范围内的特定元素。可以增加或减少迭代器以引用存在于范围或容器中的另一个元素。迭代器指向范围特定元素的内存位置。
使用迭代器在 C++ 中打印映射
首先,我们看一下如何定义迭代器以打印映射的语法。
语法
map<datatype, datatype> myMap; map<datatype, datatype > :: iterator it; for (it = myMap.begin(); it < myMap.end(); it++) cout << itr->first << ": " << itr->second << endl;
另一种方法是这样的:
map<datatype, datatype> mmap; for (auto itr = my.begin(); itr != mmap.end(); ++itr) { cout << itr->first << ": " << itr->second << endl; }
让我们举一个使用这两种方法的例子:
示例
#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
使用第二种方法:
示例
#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
结论
要显示 C++ 中映射的内容,我们必须使用迭代器,否则很难打印出值。使用迭代器,可以非常轻松地遍历映射中的所有条目并显示其值。
广告