如何访问<string,vector <string =“”>&gt;的值和键?地图吗?</串,>

时间:2014-11-20 19:05:19

标签: c++

我正在尝试访问地图的键和变量:

map<string, vector<string>> Di;

这样我就可以看到该值是否包含一个名称,在这种情况下,该值的键(数字)是什么。
我试过这个,但我只有这么远,我不知道从哪里开始:

for (auto& kv : Di)
{
    bool checking = Di.find(namn) != Di.end();
    if (checking)
    {
        string key = Di.first;
        cout<<"Number: "<<key<<endl;
    }
}

1 个答案:

答案 0 :(得分:1)

您可以遍历地图的所有元素,然后使用关键字firstsecond分别访问关键字和值。

for (auto const& element : Di)
{
    string key = element.first;
    vector<string> value = element.second;
}

如果您要在地图中查找特定元素,则可以执行

map<string, vector<string>>::iterator it = Di.find(name);
if (it != end(Di)
{
    vector<string> value = it->second;
}