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

📅  最后修改于: 2023-12-03 14:39:51.447000             🧑  作者: Mango

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

简介

multiset 是 C++ STL 中的一个容器,用于存储已排序的元素集合,允许重复元素。multiset::rbegin()multiset 容器的成员函数,返回一个反向迭代器,指向容器的尾部(即最后一个元素),并允许反向迭代器遍历容器。

语法

multiset::reverse_iterator multiset::rbegin() noexcept; 其中,reverse_iteratormultiset 的反向迭代器。

参数

无。

返回值

函数返回一个反向迭代器,指向容器的尾部(即最后一个元素)。

示例代码
#include <iostream>
#include <set>

int main()
{
    std::multiset<int> mySet {5, 3, 2, 8, 9};

    std::cout << "Elements in the set in reverse order are:" << std::endl;

    for (auto it = mySet.rbegin(); it != mySet.rend(); ++it)
        std::cout << *it << std::endl;

    return 0;
}

输出结果:

Elements in the set in reverse order are:
9
8
5
3
2
解释示例代码

在上述示例代码中,我们首先创建了一个 multiset 类型的变量 mySet,并将一些整数元素存储到其中。然后,我们使用 rbegin() 成员函数创建一个反向迭代器 it,它指向 mySet 中最后一个元素。在 for 循环内,我们使用 rbegin()rend() 成员函数遍历容器,从尾部向头部依次遍历所有元素,并使用 *it 访问元素的值。

注意事项
  • multiset::rbegin() 成员函数只适用于可变 multiset 实例,因为要反向迭代器,需要支持迭代器的修改操作。
  • 反向迭代器 it 指向最后一个元素,但是实际上它指向的是容器底部,即最后一个元素的下一个位置,因此需要注意迭代器的边界条件。
参考资料
  1. multiset::rbegin() in C++ STL
  2. std::multiset