当前位置:  开发笔记 > 编程语言 > 正文

将两个unordered_maps与重叠键合并

如何解决《将两个unordered_maps与重叠键合并》经验,为你挑选了1个好方法。

我想合并两个std::unordered_map:mapA并且mapB,mapA如果两个地图包含相同的密钥,则保持项目的优先级.

是否有一种优雅的方式(而不是验证每个键..我的地图包含大量元素)?

例:

mapA = {{"sugar",0.1},{"salt",0.2}}
mapB = {{"sugar",0.3},{"pepper",0.4}}

我想要的结果是:

result = {{"sugar",0.1},{"salt",0.2},{"pepper",0.4}}

忽略{"sugar",0.3}来自的键值mapB

谢谢.



1> ecatmur..:

绝对:

auto result = mapA;
result.insert(mapB.begin(), mapB.end());

insert成员函数unordered_map做什么,如果钥匙已经在容器内的存在.

演示.

推荐阅读
可爱的天使keven_464
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有