在掌握 C++ STL map 容器的基础上,本节再讲一个和 map 相似的关联式容器,即 multimap 容器。

所谓“相似”,指的是 multimap 容器具有和 map 相同的特性,即 multimap 容器也用于存储 pair<const K, T> 类型的键值对(其中 K 表示键的类型,T 表示值的类型),其中各个键值对的键的值不能做修改;并且,该容器也会自行根据键的大小对存储的所有键值对做排序操作。和 map 容器的区别在于,multimap 容器中可以同时存储多(≥2)个键相同的键值对。

和 map 容器一样,实现 multimap 容器的类模板也定义在<map>头文件,并位于 std 命名空间中。因此,在使用 multimap 容器前,程序应包含如下代码:

#include <map>
using namespace std;

注意,第二行代码不是必需的,但若不用,则程序中在使用 multimap 容器时需手动注明 std 命名空间(强烈建议初学者使用)。

multimap 容器类模板的定义如下:

template < class Key,                                   // 指定键(key)的类型class T,                                     // 指定值(value)的类型class Compare = les

C++(STL):35---multimap容器相关推荐

  1. stl之multimap容器

    multimap与map一样,都是使用红黑树对记录型的元素数据按元素键值的比较关系,进行快速的插入.删除和检索操作,所不同的是multimap允许插入具有重复性键值的元素. 在multimap容器中, ...

  2. C++ map容器和multimap容器(STL map容器)

    目录 1. 关联容器和map容器概述 2. map容器 2.1 map的创建以及初始化列表 2.2 map容器的一般常用属性(方法) 2.3 插入数据 2.4 数据的访问和遍历 2.5 数据的删除 2 ...

  3. STL容器系列文章:multimap容器

    1. 头文件 #include <map> // 和map容器一样 2. 定义 用于存储多个键相同的键值对pair<const K, T>,底层红黑树RB Tree实现,具有自 ...

  4. 【C++】【第六篇-2】【黑马 p215~p242】【list容器】【set/multiset容器】【map/multimap容器】【函数对象】【谓词】【内建函数对象】

    [C++][第六篇-2][黑马 p215~p242][list容器][set/multiset容器][map/multimap容器][函数对象][谓词][内建函数对象] 3.7 list容器(p215 ...

  5. 【C++ STL学习笔记】C++ STL序列式容器(array,vector,deque,list)

    文章目录 C++ STL容器是什么? 迭代器是什么,C++ STL迭代器(iterator)用法详解 迭代器类别 迭代器的定义方式 C++序列式容器(STL序列式容器)是什么 容器中常见的函数成员 C ...

  6. STL标准库-容器-set与map

    STL标准库-容器-set与multiset C++的set https://www.cnblogs.com/LearningTheLoad/p/7456024.html STL标准库-容器-map和 ...

  7. STL——关联式容器

    一.关联式容器 标准的STL关联式容器分为set(集合)/map(映射表)两大类,以及这两大类的衍生体multiset(多键集合)和 multimap(多键映射表).这些容器的底层机制均以RB-tre ...

  8. 第十三篇:multimap容器和multiset容器中的find操作

    前言 multimap容器是map容器的" 增强版 ",它允许一个键对应多个值.对于map容器来说,find函数将会返回第一个键值匹配元素所在处的迭代器.那么对于multimap容 ...

  9. multimap 容器

    multimap 容器具有和 map 相同的特性,即 multimap 容器也用于存储 pair<const K, T> 类型的键值对(其中 K 表示键的类型,T 表示值的类型),其中各个 ...

  10. STL关联式容器详解

    STL关联式容器类别 1. map 定义在 头文件中,使用该容器存储的数据,其各个元素的键必须是唯一的(即不能重复),该容器会根据各元素键的大小,默认进行升序排序(调用 std::less). 2. ...

最新文章

  1. Cobbler-自动化部署神器
  2. 全国信息化计算机应用技术水平教育考试,全国信息化计算机应用技术水平教育考试试卷.doc...
  3. Activity的切换动画
  4. 特殊时期,对数据中心运营有哪些影响?
  5. Python学习 Day 042 - css 浮动 定位
  6. C#检查json格式是否合法
  7. 【一遍过!!!】1014 Waiting in Line (30 分)(题意+分析)
  8. java 线程由浅入深_由浅入深,Java 并发编程中的 Synchronized(一)
  9. 亚马逊推荐python_使用python查找amazon类别
  10. 《WebGL编程指南》学习笔记——4.绘制一个点
  11. 网络抖动多少ms算正常_网络延迟多少ms算正常 - 卡饭网
  12. 问的书写规则是什么意思_汉字笔顺的书写规则是什么
  13. VC++修改注册表实现禁用开启U盘
  14. playwright 组件超时问题
  15. 编译原理陈火旺第三版第六章课后题答案
  16. python基础学习-斐波那契数列实现
  17. 免费mysql客户端推荐
  18. selenium 如何在已打开的浏览器上直接自动化脚本
  19. 哈工大c语言第四版pdf,哈工大C语言讲义 指针.pdf
  20. 双曲线方程y=1/x的对称轴变为直角坐标系的坐标轴是什么样的方程?

热门文章

  1. Asterisk权威指南/第六章 拨号计划基础
  2. html中怎么写jq,用jQuery替换HTML页面中的文本
  3. 延边大学c语言题库,延边大学-SPOC官方网站
  4. 基于集成提升和 Bagging 的地下水潜力预测机器学习模型文件阅读
  5. 【转】VTK修炼之道1_初识VTK
  6. TFS多地办公时的处理
  7. MockPlus原型设计介绍
  8. 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性)
  9. Java对象模型-oop和klass
  10. vs visual studio 2015安装后的几个问题