std的find和reverse_iterator联合使用
上代码:
// test2013.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <stdlib.h> #include <stdio.h> #include<iostream> #include<vector> #include<map> #include<string> using namespace std;struct CmpByKeyNumber {bool operator()(const int& k1, const int& k2) {return k1 < k2; //升序排列 } };int _tmain(int argc, _TCHAR* argv[]) {std::map<int, string, CmpByKeyNumber> arr;arr.insert(make_pair(0, "dd"));arr.insert(make_pair(1, "bbbbb"));arr.insert(make_pair(2, "aaaaaaaaaaa"));std::map<int, string>::iterator itTemp = arr.find(2);if (itTemp == arr.end()){return -2;}/*这里转为反向迭代器。注意,正向迭代器转为反向迭代器后,反向迭代器指向的是正向迭代器的前一个元素。所以,这里用了++:先++,itTemp指向下一个元素(即是arr.end() ),通过这样的方式,反向迭代器和正向迭代器指向的都是同一个pair。*/std::map<int, string>::reverse_iterator it(++itTemp);for (; it != arr.rend(); it++){int key = it->first;string dd = it->second;printf("pair( %d, %s )\n", key, dd.c_str());}printf("\ndone\n");getchar();return 0; }
运行效果:
完。
转载于:https://www.cnblogs.com/liyou-blog/p/5780943.html
std的find和reverse_iterator联合使用相关推荐
- 位域,extern “C“,struct 和 typedef struct,struct 和 class,union 联合,friend友元类,using,::范围解析运算符
文章目录 位域 extern "C" struct 和 typedef struct C++中struct 和 class union联合 explicit(显式)关键字 frie ...
- std::array
array c++11 封装了相关的数组模板类,不同于 C 风格数组,它不会自动退化成 T* 类型,它能作为聚合类型聚合初始化 std::array 是封装固定大小数组的容器,数组元素下标索引从 0 ...
- std::multiset
std::multiset 介绍 成员函数 构造析构 元素访问 迭代器 容量 修改器 查找 非成员函数 介绍 // multiset 模板定义 template<class Key, class ...
- C++关键字union
说明 联合(union)是一种节省空间的特殊的类,一个 union 可以有多个数据成员,但是在任意时刻只有一个数据成员可以有值.当某个成员被赋值后其他成员变为未定义状态.联合有如下特点: 默认访问控制 ...
- C++面试知识点总结
一.static关键字的作用 1.修饰普通变量,修改变量的存储区域和生命周期,使变量存储在静态区,在 main 函数运行前就分配了空间,如果有初始值就用初始值初始化它,如果没有初始值系统用默认值初始化 ...
- 矩阵的特征值和特征向量的雅克比算法C/C++实现
矩阵的特征值和特征向量是线性代数以及矩阵论中非常重要的一个概念.在遥感领域也是经常用到,比如多光谱以及高光谱图像的主成分分析要求解波段间协方差矩阵或者相关系数矩阵的特征值和特征向量. 根据普通线性代数 ...
- 使用map的find头文件_C++ map用法
C++ 中 map 提供的是一种键值对容器,里面的数据都是成对出现的,如下图:每一对中的第一个值称之为关键字(key),每个关键字只能在 map 中出现一次:第二个称之为该关键字的对应值.在一些程序中 ...
- 光线求交加速算法:边界体积层次结构(Bounding Volume Hierarchies)3-LBVH(Linear Bounding Volume Hierarchies)
光线求交加速算法:边界体积层次结构(Bounding Volume Hierarchies)3 尽管使用表面积启发式方法(SAH)构建边界体积层次结构会产生很好的结果,但是该方法确实存在两个缺点:首先 ...
- C++安全方向(二):2.5 Base58_比特币钱包地址_算法分析
我们学完了Base64,把一个钱包地址打印出来会发现很多字符混乱不清.比如O,0,o,L,l,I,i等字符去掉,转化为Base58的编码方式. 如下图: 所以我们不能在用Base16,Base64等算 ...
最新文章
- 基于C++的骨架提取的鼻祖算法
- Android开源框架——内存泄漏检测工具 LeakCanary
- 决策树之前要不要处理缺失值_不要使用这样的决策树
- 计算机应用技术专业标志,计算机应用技术论文
- 小财靠勤,中财靠德,大财靠命,现在多少钱才是小财?
- Linux定时任务cron及部分Linux命令
- centos无法使用ifconfig命令,安装方法
- STM32CUBEF4 实现USB 虚拟串口
- 求和值大于等于776且和值最小的两个数
- CQF笔记M1L4随机分析和伊藤引理
- 最全常见算法工程师面试题目整理
- xp计算机找不到音量调节,电脑音量图标消失无法调整声音大小的解决方案
- 99%的人都不知道的减肥小秘密,你必须知道
- vscode+authorized_keys登录不上的原因
- linux格式化只读u盘,linux下FAT32格式u盘只读的问题及解决方法
- 全文检索四种技术解决方案
- @CacheEvict
- win10 安装docker msi主板开启虚拟化
- 网络共享查看其他计算机取消密码,Win7局域网访问需要密码 win7取消共享密码的方法...
- 【AE工具】AE一键切换中英文小工具,免费下载 支持CC2014-CC2019