• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

盖子的c++小课堂——第二十一讲map

武飞扬头像
抓到一只盖子吖
帮助1

前言

时隔一周,我又来更新了^_^,今天都第二十一讲了,前三个板块马上就结束了,也就是小课堂(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(值)

中括号操作符

  1.  
    #include<iostream>
  2.  
    #include<map>
  3.  
    #include<string>
  4.  
    using namespace std;
  5.  
    int main(){
  6.  
    map<char,string> d;
  7.  
    d['a']="wawawa";
  8.  
    d['b']="hahaha";
  9.  
    d['c']=d['a'];
  10.  
    d['b']="hohoho";
  11.  
    cout<<d['a']<<endl;
  12.  
    cout<<d['b']<<endl;
  13.  
    return 0;
  14.  
    }

#代码乱编的,仅供参考#

类似数组的[ ]操作符用于访问元素

 .size()

  1.  
    #include<iostream>
  2.  
    #include<map>
  3.  
    using namespace std;
  4.  
    int main(){
  5.  
    map<char,int> d;
  6.  
    d['a']=101;
  7.  
    d['b']=202;
  8.  
    d['c']=302;
  9.  
    cout<<d.size()<<endl;
  10.  
    return 0;
  11.  
    }

.count()

  1.  
    #include<iostream>
  2.  
    #include<map>
  3.  
    using namespace std;
  4.  
    int main(){
  5.  
    map<char,int> d;
  6.  
    d['a']=50;
  7.  
    d['b']=100;
  8.  
    cout<<d.count('a')<<endl;
  9.  
    cout<<d.count('b')<<endl;
  10.  
    cout<<d.count('x')<<endl;
  11.  
    return 0;
  12.  
    }

计数器map

  1.  
    #include<iostream>
  2.  
    #include<map>
  3.  
    #include<string>
  4.  
    using namespace std;
  5.  
    int main(){
  6.  
    map<string,int> d;
  7.  
    cnt["Mike"] ;
  8.  
    cnt["John"] ;
  9.  
    cnt["Mike"] ;
  10.  
    cnt["Peter"] ;
  11.  
    cout<<cnt["Mike"]<<endl;
  12.  
    cout<<cnt["John"]<<endl;
  13.  
    cout<<cnt["Peter"]<<endl;
  14.  
    return 0;
  15.  
    }

.find()

  1.  
    #include<iostream>
  2.  
    #include<map>
  3.  
    using namespace std;
  4.  
    int main(){
  5.  
    map<char,int> d;
  6.  
    map<char,int>::iterator it;
  7.  
    d['a']=50;
  8.  
    d['b']=100;
  9.  
    d['c']=150;
  10.  
    it=d.find('c');
  11.  
    cout<<it->second<<endl;
  12.  
    return 0;
  13.  
    }

map易错点

对于key,自动排序,自动去重

value附属于key,不会自动排序,不会自动去重

总结

好了,今天就归纳这些,拜了个拜~~

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhiafiki
系列文章
更多 icon
同类精品
更多 icon
继续加载