C++map如何实现根据value找key

小编给大家分享一下C++ map如何实现根据value找key,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

宝丰ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

测试所需头文件

#include   
#include    
#include 
#include 

初始

std::map t;
  t.insert(std::make_pair(1, "a"));
  t.insert(std::make_pair(2, "b"));
  t.insert(std::make_pair(3, "c"));
  t.insert(std::make_pair(4, "d"));

根据key 找 value

std::string s = "";
  auto it = t.find(2);
  if (it != t.end())
  {
    s = (*it).second;
  }

根据value 找key lambda方式

std::string s = "c";
  auto find_item = std::find_if(t.begin(), t.end(),
    [s](const std::map::value_type item)
  {
    return item.second == s;
  });

  int n = 0;
  if (find_item!= t.end())
  {
    n = (*find_item).first;
  }

根据value 找key 函数对象方式

class finder
{
public:
  finder(const std::string &cmp_string) :s_(cmp_string){}
  bool operator ()(const std::map::value_type &item)
  {
    return item.second == s_;
  }
private:
  const std::string &s_;
};


//调用
int n = 0;
auto it = std::find_if(t.begin(), t.end(), finder("d"));
  if (it != t.end())
  {
    n = (*it).first;
  }

看完了这篇文章,相信你对“C++ map如何实现根据value找key”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


网页标题:C++map如何实现根据value找key
文章起源:http://bzwzjz.com/article/jjhojj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 高端品牌网站建设 攀枝花网站设计 成都网站建设 成都网站设计制作公司 成都网站建设 成都网站建设 企业网站设计 成都网站制作 成都网站设计公司 网站建设改版 成都网站设计 重庆电商网站建设 成都网站制作 响应式网站建设 手机网站建设套餐 成都企业网站制作 公司网站建设 定制网站建设多少钱 成都网站制作 网站设计公司 营销网站建设 移动网站建设