#include <iostream>
#include <map>
#include <algorithm>
#include <vector>
#include <string> using namespace std; class finder
{
public:
finder(const std::string &cmp_string) :s_(cmp_string){}
bool operator ()(const std::map<int, std::string>::value_type &item)
{
return item.second == s_;
}
private:
const std::string &s_;
}; int main()
{
map<uint32_t, string> t;
t.insert(std::make_pair(1, "cpu_syscall_pid"));
t.insert(std::make_pair(2, "cpu_syscall_cpu"));
t.insert(std::make_pair(3, "cpu_syscall_sys"));
t.insert(std::make_pair(4, "cpu_contxt_pid")); int n = 0;
auto it = std::find_if(t.begin(), t.end(), finder("cpu_syscall_pid"));
if (it != t.end())
{
n = (*it).first;
} cout << "n:" << n << endl;
return 0; }

c++ map: 根据value逆向查找key的更多相关文章

  1. Java中Map相关的快速查找算法与唯一性(转载)

    原文地址:http://blog.csdn.net/chuyuqing/article/details/19629229 在对<Set和hashCode()>的一篇原创文章写完后,由于对自 ...

  2. map按value值查找——find_if的使用(转载)

    转载:http://www.cnblogs.com/xufeiyang/archive/2012/05/09/2491871.html CValueFind #ifndef _CVALUEFIND_H ...

  3. C++(十一)— map的插入、查找、删除

    标准库map类型是一种以键-值(key-value)存储的数据类型. map是STL的一个关联容器.它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值 ...

  4. map以自定义类型当Key

    关于map的定义: template < class Key, class T, class Compare = less<Key>, class Allocator = alloc ...

  5. std::map插入已存在的key时,key对应的内容不会被更新

    std::map插入已存在的key时,key对应的内容不会被更新,如果不知道这一点,可能会造成运行结果与预期的不一致 “Because element keys in a map are unique ...

  6. 【Java必修课】通过Value获取Map中的键值Key的四种方法

    1 简介 我们都知道Map是存放键值对<Key,Value>的容器,知道了Key值,使用方法Map.get(key)能快速获取Value值.然而,有的时候我们需要反过来获取,知道Value ...

  7. 通过Value获取Map中的键值Key的四种方法

    1 简介 我们都知道Map是存放键值对<Key,Value>的容器,知道了Key值,使用方法Map.get(key)能快速获取Value值.然而,有的时候我们需要反过来获取,知道Value ...

  8. DNS服务——正向查找区 和 逆向查找区

    前言 正向查找区,就是我们最熟知的DNS.即根据域名解析成IP 逆向查找区,即根据IP解析成域名. 他们之间的关系很像ARP和RARP 正向查找区 /etc/named.rfc1912.zones用于 ...

  9. 根据map中的某一key进行排序(快速排序实现)

    /** * @author Gaoxl * 根据key值排序,要求key值能够转为Long类型(快速排序) * @param maps * @param key * @return */ public ...

随机推荐

  1. BitmapFactory.decodeStream()获取bitmap返回null

    正常的图片缩放代码如: ByteArrayOutputStream baos = new ByteArrayOutputStream(); arg1.compress(Bitmap.CompressF ...

  2. Ubuntu下用命令行快速打开各类型文件(转)

    nautilus /media/pm/文档/book/system/必读nautilus /media/pm/文档/book/android/ndk 内核/framerwork/android wai ...

  3. 如何直接打开android系统的wifi设置页面,防止intent劫持

    在android的app开发中,经常会遇到需要跳转至系统设置页面的需求.但是当你使用以下代码时: 如 Intent intent =  new Intent(Settings.ACTION_WIFI_ ...

  4. 【Silverlight】Bing Maps开发应用与技巧一:地图打点与坐标控件(CoordControl)

    [Silverlight]Bing Maps开发应用与技巧一:地图打点与坐标控件(CoordControl) 使用Bing Maps Silverlight Control开发中,很多时候都需要实现在 ...

  5. 【POJ 1716】 Integer Intervals

    [题目链接] 点击打开链接 [算法] 差分约束系统 [代码] #include <algorithm> #include <bitset> #include <cctyp ...

  6. 自动生成Makefile的全过程详解

    一.简介 Linux下的程序开发人员,一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便.一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的 ...

  7. MyEclipse个性设置

    MyEclipse个性设置 (1)Myeclipse 打开 jsp 的默认编辑器不好,会同时打开预览.所以做如下更改 Windows–>Perferences–>General–>E ...

  8. codevs1293送给圣诞夜的极光(bfs)

    1293 送给圣诞夜的极光  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold     题目描述 Description 圣诞老人回到了北极圣诞区,已经快到12点了 ...

  9. Gym - 100920E 2010-2011 OpenCup IX Onsite, II Yandex Summer School E.Paint 状压DP

    题面 题意:给你n(20)个点,m(40条边),让你给每条边染一种颜色,白色0元,红色2元,蓝色1元,现在要保证每一条白边相邻的有一条红边,问至少花多少 题解:刚开始想的时候,好像觉得只用染红色和白色 ...

  10. [Swift通天遁地]八、媒体与动画-(6)使用开源类库快速实现滑入动画

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...