C++ 实现QMap逆向遍历
时间: 2023-06-29 18:10:29 浏览: 603
逆向c++
QMap 是 Qt 中提供的一个关联容器,它提供了快速的查找和插入操作。QMap 中的元素是按照键排序的,因此可以直接使用迭代器进行正向遍历。如果要进行逆向遍历,可以使用 QMap 的 rbegin() 和 rend() 函数来获取反向迭代器,然后使用迭代器的递减操作符进行遍历。
下面是使用 C++ 实现 QMap 的逆向遍历的示例代码:
```c++
#include <iostream>
#include <QMap>
int main()
{
QMap<int, std::string> map;
map.insert(1, "one");
map.insert(2, "two");
map.insert(3, "three");
// 逆向遍历
for (auto it = map.rbegin(); it != map.rend(); ++it) {
std::cout << it.key() << ": " << it.value() << std::endl;
}
return 0;
}
```
在上面的示例代码中,首先定义了一个 QMap 对象,并向其中插入了三个键值对。然后使用反向迭代器进行逆向遍历,输出每个键和对应的值。注意,使用迭代器的 key() 和 value() 函数可以分别获取迭代器指向的键和值。
阅读全文