您好我正在开发一个项目,而且我是C ++的初学者
我有一张地图列表
list<map<int,double>> voisin;
我想知道是否可以检查我的地图中是否存在该元素。 这是一个C#代码,你能告诉我如何用C ++编写它。
var res = voisin[a].Find(Map<int, double> x)
谢谢
答案 0 :(得分:0)
查看http://www.cplusplus.com/reference/map/map/find/
这应该可以解决问题。
// map::find
#include <iostream>
#include <map>
int main ()
{
std::map<char,int> mymap;
std::map<char,int>::iterator it;
mymap['a']=50;
mymap['b']=100;
mymap['c']=150;
mymap['d']=200;
it=mymap.find('b');
mymap.erase (it);
mymap.erase (mymap.find('d'));
// print content:
std::cout << "elements in mymap:" << '\n';
std::cout << "a => " << mymap.find('a')->second << '\n';
std::cout << "c => " << mymap.find('c')->second << '\n';
return 0;
}
输出: mymap中的元素: a =&gt; 50 c =&gt; 150
答案 1 :(得分:0)
std::map<int,double>::iterator it = m.find(e);
其中m
是map
,而e
的类型与m
中的键的类型相同。
find
如果没有找到指定的密钥,则会向map::end
返回一个迭代器。
注意 std::list
in C++ is not the same as List
in C#。 std::list
是链接列表。如果您想要一个与C#List
等效的容器,请使用std::vector
。