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++ 中映射的内容,我们必须使用迭代器,否则很难打印出值。使用迭代器,可以非常轻松地遍历映射中的所有条目并显示其值。

更新于: 2022-12-13

1K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告