Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何从地图的末尾开始_C++_Visual Studio 2010_Visual C++ - Fatal编程技术网

C++ 如何从地图的末尾开始

C++ 如何从地图的末尾开始,c++,visual-studio-2010,visual-c++,C++,Visual Studio 2010,Visual C++,我希望能够从std::map的末尾开始,以便首先检查列表末尾的项目,例如 std::map<int> MapBasicExample; MapBasicExample.insert(1); MapBasicExample.insert(2); MapBasicExample.insert(3); MapBasicExample.insert(4); MapBasicExample.insert(5); std::MapBasicExample; MapBasicExample.i

我希望能够从
std::map
的末尾开始,以便首先检查列表末尾的项目,例如

std::map<int> MapBasicExample;

MapBasicExample.insert(1);
MapBasicExample.insert(2);
MapBasicExample.insert(3);
MapBasicExample.insert(4);
MapBasicExample.insert(5);
std::MapBasicExample;
MapBasicExample.insert(1);
MapBasicExample.insert(2);
MapBasicExample.insert(3);
MapBasicExample.insert(4);
MapBasicExample.insert(5);

当我使用
MapBasicExample.begin()
时,首先检查的是值“5”,我希望先从循环中的1-5开始,而不是像使用
MapBasicExample.begin()
时那样从5-1开始,这是如何做到的?

您可以按如下相反顺序迭代贴图:

for (auto it = MapBasicExample.rbegin(); it != MapBasicExample.rend(); it++) {
    std::cout << it->first << " = " << it->second << std::endl;
}
for(auto-it=MapBasicExample.rbegin();it!=MapBasicExample.rend();it++){

std::cout first?你的例子完全不正确。地图有键和值,并且本质上是按升序排序的。因此你所说的没有任何意义。大概你的意思是
set
,而不是
map
;地图的顺序应该是1-5。在任何情况下,使用
rbegin
rend
向后迭代。@Lightness在轨道上比赛,这是为了更好地解释我自己和我想要的东西,它不是提供任何类型的代码,正如你在示例中可以清楚地看到的那样-因此,这个问题。我得到了我的答案,所以它看起来毕竟是有意义的。@user2142260-1所以不是让任何人得到他们的答案,而是对社区有用。作为一个问题要有用,它必须满足最低标准。你的没有,也应该关闭。