std的find和reverse_iterator联合使用
生活随笔
收集整理的這篇文章主要介紹了
std的find和reverse_iterator联合使用
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
上代碼:
// test2013.cpp : 定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。 // #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;}/*這里轉(zhuǎn)為反向迭代器。注意,正向迭代器轉(zhuǎn)為反向迭代器后,反向迭代器指向的是正向迭代器的前一個(gè)元素。所以,這里用了++:先++,itTemp指向下一個(gè)元素(即是arr.end() ),通過這樣的方式,反向迭代器和正向迭代器指向的都是同一個(gè)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; }?
運(yùn)行效果:
?
完。
?
轉(zhuǎn)載于:https://www.cnblogs.com/liyou-blog/p/5780943.html
總結(jié)
以上是生活随笔為你收集整理的std的find和reverse_iterator联合使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FGUI的常用方法
- 下一篇: 导入jasperreports出现Can