我有一组对象,在一些初始化过程中,我需要保留std::map
,但在初始化之后我只需要一个std::vector
。有效的方法是将地图的值保存到矢量中吗?
我正在寻找具有移动语义的东西,或者也许在Boost中有一些地图的实现可以使这更容易。
答案 0 :(得分:3)
不应该这样做:
your_vector.reserve(your_map.size());
for(auto& item : your_map) {
your_vector.push_back(std::move(item.second));
}