【C++ Primer | 11】关联容器(一)
在multimap或multiset中查找元素
第二种方法解释:

#include <iostream>
#include <utility>
#include <iterator>
#include <functional>
#include <algorithm>
#include <map>
#include <set>
#include <string>
using namespace std; int main()
{
pair<string, int> p[] = { {"a", },
{"c", },
{"b", },
{"d", },
{"a", },
{"a", } };
multimap<string, int> mm(begin(p), end(p));
for (auto q : mm)
{
cout << q.first << " " << q.second << endl;
}
//第一种方法 find+count
string search_item("a");
auto entries = mm.count(search_item);
auto iter = mm.find(search_item);
while (entries)
{
cout << iter->second << endl;
++iter;
--entries;
}
//第二种方法:面向迭代器的解决方法
for (auto beg = mm.lower_bound(search_item), end = mm.upper_bound(search_item); beg != end; ++beg)
{
cout << beg->second << " ";
}
//第二种方法:利用equal_range函数
for (auto pos = mm.equal_range(search_item); pos.first != pos.second; ++pos.first)
{
cout << pos.first->second << " ";
}
system("pause");
return ;
}
输出结果:

【C++ Primer | 11】关联容器(一)的更多相关文章
- C++ Primer 笔记——关联容器
		1.关联容器支持高效的关键字查找和访问,标准库提供8个关联容器. 2.如果一个类型定义了“行为正常”的 < 运算符,则它可以用作关键字类型. 3.为了使用自己定义的类型,在定义multiset时 ... 
- c++ primer 10 关联容器
		关联容器和顺序容器的本质差别在于:关联容器通过键(key)存储和读取元素,顺序容器则通过元素在容器中的位置顺序存储和访问元素 关联容器类型 map 关联数组:元素通过键来存储和读取 set 大小可变的 ... 
- c++11の关联容器
		一.关联容器 C++的容器类型可以分为顺序容器和关联容器两大类.对于关联容器,主要有map和set,对于这两种,根据不同的维度,衍生出了8种容器 map ... 
- C++ Primer 5th 第11章 关联容器
		练习11.1:描述map 和 vector 的不同. map是关联容器,vector是顺序容器,关联容器与值无关,vector则与值密切相关 练习11.2:分别给出最适合使用 list.vector. ... 
- [C++ Primer] : 第11章: 关联容器
		目录 使用关联容器 关联容器概述 关联容器操作 无序容器 使用关联容器 关联容器与顺序容器有着根本的不同: 关联容器中的元素是按关键字来保存和访问的, 按顺序容器中的元素是按它们在容器中的位置来顺序保 ... 
- 【C++ Primer 第11章】2. 关联容器操作
		练习答案 一.访问元素 关联容器额外类型别名 key_type 此容器类型的关键字类型 mapped_type 每个关键字关联的类型,只 适用于map mapped_type 对于set,与key_ ... 
- 《C++ Primer》笔记 第11章 关联容器
		关联容器类型 解释 按关键字有序保存元素 -- map 关联数组:保存关键字-值对 set 关键字即值,即只保存关键字的容器 multimap 关键字可重复出现的map multiset 关键字可重复 ... 
- C++ Primer 学习笔记_34_STL实践与分析(8) --引言、pair类型、关联容器
		STL实践与分析 --引言.pair类型.关联容器 引言: 关联容器与顺序容器的本质差别在于:关联容器通过键[key]来存储和读取元素,而顺序容器则通过元素在容器中的位置顺序的存取元素. ma ... 
- 【足迹C++primer】38、关联容器操作(2)
		版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/cutter_point/article/details/35244805 关联容器操作(2) map ... 
- 【c++ Prime 学习笔记】第11章 关联容器
		关联容器的元素按照关键字来保存和访问,而顺序容器的元素是按照在容器中的位置来保存和访问 关联容器支持高效的关键字查找和访问 2种关联容器: map中的元素是关键字-值对(key-value对),关键字 ... 
随机推荐
- Error "Client wants topic A to have B, but our version has C. Dropping connection."
			ROS problem 出现这个问题的原因是话题上的消息类型和订阅节点指定的消息类型不匹配. 
- V4L2 API详解 <二>   Camera详细设置【转】
			转自:http://blog.sina.com.cn/s/blog_602f87700101bf36.html 作者: Sam (甄峰) sam_code@hotmail.com Camera的 ... 
- Fusebox  类似WEBPACK 的工具,React Studio
			Fusebox 类似WEBPACK 的工具, http://fuse-box.org/ React Studio: https://hackernoon.com/@reactstudio 
- C# 基础之const
			1.使用 const 关键字来声明某个常量字段或常量局部变量.常量字段和常量局部变量不是变量并且不能修改. 常量可以为数字.布尔值.字符串或 null 引用(Constants can be numb ... 
- ifconfig相关参数及用法说明
			一.ifconfig ifconfig 主要是可以手动启动.观察与修改网络接口的相关参数,可以修改的参数很多,包括 IP 参数以及 MTU 等都可以修改,它的语法如下: [root@linux ~]# ... 
- 关于boost中enable_shared_from_this类的原理分析
			首先要说明的一个问题是:如何安全地将this指针返回给调用者.一般来说,我们不能直接将this指针返回.想象这样的情况,该函数将this指针返回到外部某个变量保存,然后这个对象自身已经析构了,但外部变 ... 
- 统一门户与业务系统的sso整合技术方案(单点登录)
			一.单点登录(SSO,Single Sign On)整合目前计划接入统一门户的所有业务系统均为基于JavaEE技术的B/S架构系统.由于统一门户的单点登录技术选用的是JA-SIG组织开发的Cas Se ... 
- DALSA相机开发--修改参数
			DALSA gige相机有两种方式可以获取到相机相关参数,一个是读取相机里面的xml文件:另外一个是读取相对应的寄存器的值. 对于修改寄存器的值,有两个相应的函数: 1)GevSetFeatureVa ... 
- $Django 聚合函数、分组查询、F,Q查询、orm字段以及参数
			一.聚合函数 from django.db.models import Avg,Sum,Max,Min,Count,F,Q #导入 # .查询图书的总价,平均价,最大价,最小价 ... 
- ASP.NET 验证码绘制
			using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ... 
