博客
关于我
Map(关联式容器)
阅读量:800 次
发布时间:2023-02-07

本文共 2030 字,大约阅读时间需要 6 分钟。

  map是一类关联式容器,自动建立Key - Value的对应 , key 和 Value可以是任意你需要的类型。下面介绍 map 中一些常用的函数;

一、map 中的 begin 和 end 函数

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.begin() -> first;      // 输出第一个元素的键值

  m.begin() -> second ;    // 输出第一个元素的 value  

  m.end() -> first ;    // 输出最后一个元素的下一个元素的键值

  m.end() ->second ;  // 输出最后一个元素的下一个元素的value

二、map 中的 rbegin 和 rend 函数

  和其他数据结构差不多,这个是从后往前输出的,返回的值要用变量来存储,变量应该这样定义:map<char,int>::reverse_iterator iter ;

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.rbegin() -> first ;   // 输出最后一个元素的键值

  m.rend() -> first ;    // 输出第一个前面一个元素的键值

三、map 中的 empty 函数

  map<char , int> m ;

  m.empty() ;  //若 map 中的元素为空时,返回 true ,否则返回 false 

四、map 中的 size 函数

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.size() ;    // 返回 map 中的数据元素个数

五、map 中的 at 函数

  at 函数中的参数为键值,输出的是键值相对应的 value ;

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.at('a') ;  //  输出键值 a 对应的 value ,相当于 vector 中的 at 中放入下标

六、map 中的 find 函数

  find 函数用来查找键值,返回键值所在的位置指针;

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.find('b') -> second ;  // 输出键值 b 对应的 value

七、map 中的 insert 函数 

  和其他数据结构很相似,insert 函数有两个参数,第一个参数表示在什么地方插入,第二个参数表示插入什么

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.insert(m.begin() , pair<char,int>('a',50) ;    // 在容器之前插入一个元素('a' , 50) ;

  map<char , int> m1 ;

  m1.insert(m.begin() , m.end()) ;    // 将 m 中的数据全部复制给 m1 

  m1.insert(m.begin(),m.find('c')) ;    // 将 m 中的数据从第一个开始,一直复制到键值为 c 为止

八、map 中的 erase 函数

  erase 函数 用来删除 map中的某个对象 , 参数为map对象的键值 ;

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.erase('a') ;  //将键值为 a 的这个对象给删除掉

  m.erase(m.find('a')) ;  效果和上面一样

  m.erase(m.find('a') , ++m.find('b')) ;  // 将键值为 a 和 b 的map对象删除

九、map 中的 count 函数

  count 函数 顾名思义,用来统计相同键值出现的次数

  map<char , int> m ;

  m['a'] = 100 ;

  m['b'] = 200 ;

  m['c'] = 300 ;

  m.count('b') ;    // 输出键值 b 出现的次数

 

  

转载于:https://www.cnblogs.com/NYNU-ACM/p/4237430.html

你可能感兴趣的文章
Mysql学习总结(38)——21条MySql性能优化经验
查看>>
Mysql学习总结(39)——49条MySql语句优化技巧
查看>>
Mysql学习总结(3)——MySql语句大全:创建、授权、查询、修改等
查看>>
Mysql学习总结(40)——MySql之Select用法汇总
查看>>
Mysql学习总结(41)——MySql数据库基本语句再体会
查看>>
Mysql学习总结(42)——MySql常用脚本大全
查看>>
Mysql学习总结(43)——MySQL主从复制详细配置
查看>>
Mysql学习总结(44)——Linux下如何实现mysql数据库每天自动备份定时备份
查看>>
Mysql学习总结(45)——Mysql视图和事务
查看>>
Mysql学习总结(46)——8种常被忽视的SQL错误用法
查看>>
Mysql学习总结(48)——MySql的日志与备份还原
查看>>
Mysql学习总结(49)——从开发规范、选型、拆分到减压
查看>>
Mysql学习总结(4)——MySql基础知识、存储引擎与常用数据类型
查看>>
Mysql学习总结(50)——Oracle,mysql和SQL Server的区别
查看>>
Mysql学习总结(51)——Linux主机Mysql数据库自动备份
查看>>
Mysql学习总结(52)——最全面的MySQL 索引详解
查看>>
Mysql学习总结(53)——使用MySql开发的Java开发者规范
查看>>
Mysql学习总结(54)——MySQL 集群常用的几种高可用架构方案
查看>>
Mysql学习总结(55)——MySQL 语句大全再温习
查看>>
Mysql学习总结(56)——MySQL用户管理和权限设置
查看>>