📜  C++ STL-map.rbegin()函数(1)

📅  最后修改于: 2023-12-03 15:29:50.322000             🧑  作者: Mango

C++ STL-map.rbegin()函数

简介

map.rbegin()函数是C++中STL库中map容器提供的一个成员函数,用于返回map容器的反向迭代器,指向map容器的最后一个元素。

函数声明

以下是map.rbegin()函数的声明:

reverse_iterator rbegin() noexcept;
const_reverse_iterator rbegin() const noexcept;
函数返回值

map.rbegin()函数返回一个反向迭代器对象,该迭代器指向map容器的最后一个元素。由于是一个反向迭代器,因此它指向元素的数字将是从大到小排序的。

函数示例

下面是一个C++代码示例,展示如何使用map.rbegin()函数遍历map容器的所有元素:

#include <iostream>
#include <map>

int main() {
    std::map<int, char> myMap = {{1, 'a'}, {2, 'b'}, {3, 'c'}, {4, 'd'}, {5, 'e'}};
    
    // 输出map容器的所有元素
    for (auto it = myMap.rbegin(); it != myMap.rend(); ++it) {
        std::cout << it->first << " => " << it->second << std::endl;
    }
    
    return 0;
}

输出结果为:

5 => e
4 => d
3 => c
2 => b
1 => a
注意事项
  • map容器的迭代器对象都是bidirectional_iterator,支持双向遍历。

  • 反向迭代器与普通迭代器不同,其operator++()操作会使迭代器向前移动,而不是向后移动。因此,当使用反向迭代器进行循环时,应该使用operator--()操作来使迭代器向后移动。

总结

map.rbegin()函数是C++中STL库中map容器提供的一个成员函数,用于返回map容器的反向迭代器,指向map容器的最后一个元素。使用反向迭代器可以方便地对map容器进行逆序遍历。