使用例子解释C++中的map容器
Posted 山下有泽
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用例子解释C++中的map容器相关的知识,希望对你有一定的参考价值。
map是一个以键值对形式存储元素的容器。它类似于Java中的集合,php中的关联数组或javascript中的对象。
下面是使用 map 的好处:
map 只存储唯一的key,同时这些key都是排序的
由于 map 中的key都已经排序,再里面查找一个元素非常快
每一个元素 key都只对应一个值
下面看一个例子:
#include <iostream>
#include <map>
using namespace std;
int main (){
map<int, int> numberValues;
map<char, int> charValues;
//initializing
numberValues[1]=10;
numberValues[3]=20;
numberValues[2]=30;
numberValues[6]=40;
charValues['a']=10;
charValues['b']=20;
charValues['c']=30;
charValues['d']=40;
map<int, int>::iterator it1;
map<char, int>::iterator it2;
for(it1=numberValues.begin(); it1!=numberValues.end(); ++it1){
cout << it1->first << " => " << it1->second << '\n';
}
for (it2=charValues.begin(); it2!=charValues.end(); ++it2) {
cout << it2->first << " => " << it2->second << '\n';
}
return 0;
}
Output
1 => 10
2 => 30
3 => 20
6 => 40
a => 10
b => 20
c => 30
d => 40
Map的基本用法
创建一个 map 对象
map<string, int> myMap;
插入
使用成员函数进行插入
myMap.insert(make_pair("money", 100));
myMap.insert(make_pair("holiday", 200));
同时也可以直接用 [] 操作符
myMap["money"] = 100;
访问
可以直接使用myMap["money"]
访问一个特定的元素。
也可以使用如下的iterator来进行遍历。
map<char, int>::iterator it1;
for(it1=numberValues.begin(); it1!=numberValues.end(); ++it1){
cout << it1->first << " => " << it1->second << '\n';
}
以上是关于使用例子解释C++中的map容器的主要内容,如果未能解决你的问题,请参考以下文章