1

我有一个:

vector<unsigned> v; 

如何使用向量中的数字/值作为键来搜索

map <unsigned, unsigned>& mp 

该地图由

map.insert(pair<unsigned, unsigned>(v, sthelse))

来自另一个数据集。

4

1 回答 1

1

您不能使用 avector<unsigned>作为关键字来搜索 a map<unsigned, unsigned>。正如第一个模板参数所map<>指示的那样,键的类型是unsigned,而不是vector<unsigned>

可以使用向量的成员作为键来搜索地图,如下所示:

for(i = 0; i < v.size(); ++i) {
  auto it = mp.find(v[i]);
  if(it != mp.end()) {
    std::cout << "Look, Martha, we caught one! " << it->second << "\n";  
}
于 2012-11-16T20:39:15.757 回答