San*_*996 1 c++ data-structures
我在我的程序中使用了一个地图结构.结构的关键是时间戳.值随机变化.我使用map的主要目的是确保所有值的表示以及它们的时间戳应该按降序排列,就像最新的事件应该是最重要的.但是,这种情况并没有发生.值不是所需(降序)顺序.
我已经宣布了地图结构
map<time_t, events> eventR;
map<time_t, events>::iterator iterator;
if the events are there {
then iterator=eventR.begin();
for(iterator = eventR.begin(); iterator!=eventR.end(); ++iterator)
{
//Display
}
}
Run Code Online (Sandbox Code Playgroud)
可能是我已经理解了地图结构错误,就像它不一定排序,但我想如果我使用时间戳,那么数据将根据最新事件显示.我在这里做错了吗?我是否必须使用不同的数据结构才能获得所需的结果?
谢谢
将地图声明为:std::map<time_t, events, std::greater<time_t>>.(使用a typedef以便更容易声明迭代器.)
或者,使用rbegin()和反向迭代地图rend().