我有一张地图。我想翻转键值,这样它就不会变成地图。所以基本上第一个映射的值成为第二个映射的键。我该怎么做呢?
地图示例:
1 - 1.0
2 - 2.0
翻转后
1.0 - 1
2.0 - 2
最直接的方法(据我所知)是创建一个类型翻转的新映射,然后迭代旧映射并反向添加每个键值对。
例如,
map<int, float> if_map;
// insert some items into if_map
if_map[1] = 43.11;
if_map[44] = -13421.438;
map<float, int> reversed;
for (map<int, float>::iterator i = if_map.begin(); i != if_map.end(); ++i)
reversed[i->second] = i->first;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)