如何找到一个给定的键是否存在于C ++ std :: map中 [英] How to find if a given key exists in a C++ std::map

查看:193
本文介绍了如何找到一个给定的键是否存在于C ++ std :: map中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  typedef map< p>我正在尝试检查值是否在地图中, string,string> :: iterator mi; 
map< string,string>米;
m.insert(make_pair(f,++ - ));
pair< mi,mi> p = m.equal_range(f); //我不知道如果equal_range是我想要的
cout<< p.first; //我在这里收到错误

所以我可以打印什么在p ?

解决方案

使用 map :: find

  if(m.find(f)== m.end()){
// not found
} else {
// found
}


I'm trying to check if value is in a map and somewhat can't do it:

typedef map<string,string>::iterator mi;
map<string, string> m;
m.insert(make_pair("f","++--"));
pair<mi,mi> p = m.equal_range("f");//I'm not sure if equal_range does what I want
cout << p.first;//I'm getting error here

so how can I print what is in p?

解决方案

Use map::find

if ( m.find("f") == m.end() ) {
  // not found
} else {
  // found
}

这篇关于如何找到一个给定的键是否存在于C ++ std :: map中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆