multimap 说明

C++ 中multimap 的主要特点是允许有重复的key 其他的特点和map 类似

multimap 同样也是STL中的模板使用的时候 需要先引入 #include <set>

#include <iostream>
#include <string>
using namespace std;
#include <map>int main()
{// 创建一个空的mapmultimap<int, string> a;// 插入值使用value_typea.insert(map<int, string>::value_type(1, "张三"));a.insert(map<int, string>::value_type(2, "李四"));a.insert(map<int, string>::value_type(3, "王二"));// 插入值使用paira.insert(pair<int, string>(4, "赵括"));a.insert(map<int, string>::value_type(3, "李白")); // 允许key重复,可以插入cout <<"multimap的size:"<< a.size() << endl; // 允许key重复,打印结果为 5// 遍历map                                                  map<int, string>::iterator it;for (it = a.begin(); it != a.end(); it++){cout << (*it).first << endl;cout << (*it).second << endl;}
}

打印结果

multimap 方法说明

函数 说明
begin 返回指向map头部的迭代器
end 返回指向map末尾的迭代器
empty 判断map是否为空,为空返回true
size 返回map中元素的个数

operator[]

访问元素
insert 插入元素
clear 清空map
swap 交换两个map
find 查找一个元素
earse 删除一个元素
rbegin 返回反向迭代器以反向开始
rend 将反向迭代器返回到反向结束
cbegin 将常量迭代器返回到开头
cend 返回常量迭代器结束
crbegin 返回const_reverse_迭代器以反转开始
equal_range 返回特殊条目的迭代器对
lower_bound  将迭代器返回到下限

upper_bound

将迭代器返回到上限
value_comp()  返回比较元素value的函数

注意:没有at 方法了

demo 练习

#include <iostream>
#include <string>
using namespace std;
#include <map>int main()
{// 声明一个setmultimap<int, string> imap;// 获取默认set的sizecout << imap.size() << endl;// 插入值使用value_typeimap.insert(map<int, string>::value_type(1, "张三"));imap.insert(map<int, string>::value_type(2, "李四"));imap.insert(map<int, string>::value_type(3, "王二"));// 插入值使用pairimap.insert(pair<int, string>(4, "赵括"));// 获取map sizecout << imap.size() << endl;// 遍历mapmap<int, string>::iterator it;for (it = imap.begin(); it != imap.end(); it++){cout << (*it).first << endl;cout << (*it).second << endl;}// map 判空if (imap.empty()){cout << "map为空" << endl;}else{cout << "map不为空" << endl;}// 清空mapimap.clear();return 0;
}

C++ multimap 的使用相关推荐

  1. map multimapc++_C++的Map和Multimap

    广州C++培训的小编这一期给大家讲Map和Multimap. 6.6 Maps和Multimaps map和multimap将key/value pair当作元素进行管理.他们可根据key的排序准则自 ...

  2. STL学习系列九:Map和multimap容器

    1.map/multimap的简介 map是标准的关联式容器,一个map是一个键值对序列,即(key,value)对.它提供基于key的快速检索能力. map中key值是唯一的.集合中的元素按一定的顺 ...

  3. C++_STL——map、multimap、set、multiset

    C++_STL--map.multimap.set.multiset 内部都由红黑树实现 这里专栏里其他文章提到的函数(方法)就不会再说 参考:cplusplus 有序哈希表 有序不可重复哈希表(映射 ...

  4. C++ multimap的用法

    定义 类似于map,multimap也是存储两个元素之间的映射关系的容器,不相同的是,multimap的key值可以重复出现.另外和map.set一样,multimap的关键字类型也要具有严格弱序的定 ...

  5. C++知识点31——使用C++标准库(关联容器multimap及其初始化,赋值,查找,添加,删除与迭代器失效)

    关于关联容器map已经在博客https://blog.csdn.net/Master_Cui/article/details/108690877中介绍完了 multimap和map非常类似,容器中的元 ...

  6. 关于multimap和multiset

    1.map没有实现对[]的重载 #include <iostream> #include <map>using namespace std;int main() {multim ...

  7. Guava API学习之Multimap

    相信大家对Java中的Map类及其之类有大致的了解,Map类是以键值对的形式来存储元素(Key->Value),但是熟悉Map的人都知 道,Map中存储的Key是唯一的.什么意思呢?就是假如我们 ...

  8. stl的set,multiset, map, multimap, deque, list, stack, queue, priority_queue

    set实际上是平衡二叉树,需要声明头文件#include<set> Insert:将元素插入集合中 使用前向迭代器对集合中序遍历 使用反向迭代器reverse_iterator可以反向遍历 ...

  9. C++ multimap 的插入,遍历,删除

    #include <iostream> #include <map> #include <string>using namespace std;int main() ...

最新文章

  1. fbx 转 gltf glb 文件
  2. phpcms v9 为分类和内容添加伪静态
  3. B/S模式下如何使软件屏蔽系统热键
  4. TLS回调函数(1)
  5. Flux架构小白入门笔记
  6. 线扫相机 编码器_面阵和线扫工业相机选型
  7. 小学奥数 7647 余数相同问题 python
  8. c语言存储学生信息并显示,C语言实现学生信息管理程序
  9. 浙大 PAT b1009
  10. HALCON 21.11:深度学习笔记---模型(8)
  11. windows下vbs脚本添加网络打印机
  12. 56.Linux/Unix 系统编程手册(下) -- SOCKET 介绍
  13. 电科 | 传感器及其应用技术
  14. node安装及环境配置
  15. 大数据可视化 课堂笔记-1
  16. .Net Core环境搭建Hangfire项目
  17. 认知智能三大技术体系之类脑模型简介
  18. 2018年适合做什么网站?分享几种比较好的网站
  19. 【工具推荐】2022博客写作工具流指南
  20. 说说“腰椎间盘突出”的恢复和初步治疗

热门文章

  1. Alibaba代码规范插件、FindBugs插件安装及详解,IDEA插件安装,代码规范,代码查错,代码格式规范
  2. php rabbmq教程_RabbitMQ+PHP 教程一(Hello World)
  3. 【VB】学生信息管理系统1——系统设计怎样开始?
  4. shell编程_linux
  5. nn.moduleList 和Sequential由来、用法和实例 —— 写网络模型
  6. LeetCode简单题之拥有最多糖果的孩‭子
  7. 面试高频——JUC并发工具包快速上手(超详细总结)
  8. SpringBoot整合JDBC、整合Druid数据源详解教程
  9. Ascend Pytorch算子适配层开发
  10. 如何使用TensorCores优化卷积