map映射的基础用法

map映射的基础用法

参考:(5条消息) map 映射_happyaaakkk的博客-CSDN博客_map映射

一、什么是map映射?

定义:map容器是一个键值对key-value的映射。map的key和value可以是任意的数据类型(包括int、double、long long、string、struct、vector、queue等等)。

二、map映射的基本操作

1.map的声明

代码如下(示例):

map mp;//定义了一个从int型到int型的映射

map mp;//定义了一个从int型到string的映射

2.map的操作

以map为例子

1.插入数据

mp.insert(pair(2,"bbb"));//第一种插入方式

mp.insert(map::value_type (1,"aaa"));//第二种插入方式

mp[3]="ccc";//第三种插入方式

2.容器的属性

map.size()//返回一个映射中元素的个数

map.empty()//若map为空则返回true

map.clear()//清空容器

map.begin()//返回指向map头部的迭代器

map.end()//返回指向map末尾的迭代器

3.访问容器中的元素

方式1.map::iterator it;

#include #include using namespace std; int main() { int a[5]; mapM; a[0]=1;M[a[0]]++; a[1]=2;M[a[1]]++; a[2]=2;M[a[2]]++; a[3]=4;M[a[3]]++; a[4]=1;M[a[4]]++; map::iterator it; for(it=M.begin();it!=M.end();it++) cout<first<<' '<second<first表示映射的前一个元素,it->second表示映射的后一个元素 return 0; }

方式2(若前一个元素是int)

可用数组遍历

map mp;

for(int i=1;i<=n;i++)//数组遍历 cout<

4.[]操作符

mp[key]返回映射mp中的自变量key映射到的value的值。

优点:可以通过mp[key]的操作来查询k映射到的value的值并进行修改。