【发布时间】:2011-03-01 14:54:40
【问题描述】:
如何连接以下两个地图?
map<string, map<string,string>> map1;
map<string, map<string,string>> map2;
我只想将map2 添加到map1 并保留map1 中已有的所有元素,即在map1 的末尾添加map2。我试过map1.insert(map2.begin(), map2.end()),但它不起作用,因为它覆盖了map1 中的旧元素。
【问题讨论】:
-
“它不起作用” - 它确实起作用。这就是 std::map 的定义方式:键值对的集合,按唯一键排序。
-
您是否也想保留
map2中的所有元素? -
如果我已经将这些元素添加到 map1,为什么还要这样做?
标签: c++ dictionary merge insert concat