前言
时隔一周,我又来更新了^_^,今天都第二十一讲了,前三个板块马上就结束了,也就是小课堂(1)马上结束了,敬请期待“盖子的c++小课堂(2)”,嘿嘿~~
map
数据容器——一对一映射
map映射
每个人都有对应一个身高
每个string对应一个double
每个阿拉伯数字都有对应一个拼写
每个int对应一个string
每个学生姓名都对应一个整数的分数
每个string对应一个int
map定义
#include<map>
引入map库
map<string,int> d;
每个string对应一个int
map<char,string> d;
每个char对应一个string
string,char——key(建)
int,string——value(值)
中括号操作符
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main(){
map<char,string> d;
d['a']="wawawa";
d['b']="hahaha";
d['c']=d['a'];
d['b']="hohoho";
cout<<d['a']<<endl;
cout<<d['b']<<endl;
return 0;
}
#代码乱编的,仅供参考#
类似数组的[ ]操作符用于访问元素
.size()
#include<iostream>
#include<map>
using namespace std;
int main(){
map<char,int> d;
d['a']=101;
d['b']=202;
d['c']=302;
cout<<d.size()<<endl;
return 0;
}
.count()
#include<iostream>
#include<map>
using namespace std;
int main(){
map<char,int> d;
d['a']=50;
d['b']=100;
cout<<d.count('a')<<endl;
cout<<d.count('b')<<endl;
cout<<d.count('x')<<endl;
return 0;
}
计数器map
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main(){
map<string,int> d;
cnt["Mike"]++;
cnt["John"]++;
cnt["Mike"]++;
cnt["Peter"]++;
cout<<cnt["Mike"]<<endl;
cout<<cnt["John"]<<endl;
cout<<cnt["Peter"]<<endl;
return 0;
}
.find()
#include<iostream>
#include<map>
using namespace std;
int main(){
map<char,int> d;
map<char,int>::iterator it;
d['a']=50;
d['b']=100;
d['c']=150;
it=d.find('c');
cout<<it->second<<endl;
return 0;
}
map易错点
对于key,自动排序,自动去重
value附属于key,不会自动排序,不会自动去重
总结
好了,今天就归纳这些,拜了个拜~~文章来源:https://www.toymoban.com/news/detail-616182.html
文章来源地址https://www.toymoban.com/news/detail-616182.html
到了这里,关于盖子的c++小课堂——第二十一讲:map的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!