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<int,int> mp;//定義了一個從int型到int型的映射
map<int,string> mp;//定義了一個從int型到string的映射
2.map的操作
以map<int,string>為例子
1.插入數據
?mp.insert(pair<int,string>(2,"bbb"));//第一種插入方式?
?mp.insert(map<int, string>::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<int,int>::iterator it;
#include<iostream>
#include<map>
using namespace std;
int main()
{
? ? int a[5];
? ? map<int,int>M;
? ? 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<int,int>::iterator it;
? ? for(it=M.begin();it!=M.end();it++)
? ? ? ? cout<<it->first<<' '<<it->second<<endl;//it->first表示映射的前一個元素,it->second表示映射的后一個元素
? ? return 0;
}?
方式2(若前一個元素是int)
可用數組遍歷
map<int,int> mp;
for(int i=1;i<=n;i++)//數組遍歷?
?? ??? ?cout<<i<<" "<<mp[i]<<endl;?//輸出后一個元素
4.[]操作符
mp[key]返回映射mp中的自變量key映射到的value的值。
優點:可以通過mp[key]的操作來查詢k映射到的value的值并進行修改。
?
總結
以上是生活随笔為你收集整理的map映射的基础用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: scrapy_redis种子优化
- 下一篇: SAP BASIS ADM100 中文版