如何获取std :: unordered_map的最后一个元素?

Kor*_*idu 8 c++

如何获得最后一个元素std::unordered_map

myMap.rbegin()并且--myMap.end()是不可能的.

qua*_*dev 9

容器中没有"最后一个元素"是无序的.

你可能想要一个有序的容器,例如std::map并访问最后一个元素mymap.rbegin()->first(另见这篇文章)

编辑:

要检查你的迭代器是否会结束,只需增加它(并可能将其保存为临时)并检查它mymap.end(),或者甚至更清洁:if (std::next(it) == last)