动态插入一对可能是unordered_list的方式如何?

Lon*_*újo -1 c++ c++11

如果我有一个unordered_map并且我想在一个动态迭代的值中std::unordered_map::insert插入,但总是只插入一次.

unordered_map<string, string> legalities;
vector<string> values = {"foo", "bar"};

for(auto& value : values) {
  legalities.insert({ "foo", value });
  cout << value << endl;
}

legalities.size(); // return 1
Run Code Online (Sandbox Code Playgroud)

我怎么能以这种方式插入?

Som*_*ken 5

那是因为std::unordered_map不允许重复键("foo"两次).如果你想要重复键,你应该使用std::unordered_multimap.