C++ set rbegin()

2024年8月30日 | 阅读4分钟

C++ set rbegin() 函数用于返回一个反向迭代器,该迭代器指向 set 容器的最后一个元素。

set 的反向迭代器以相反方向移动,并递增直到到达 set 容器的开头(第一个元素)。

语法

参数

返回值

它返回一个反向迭代器(reverse iterator),指向 set 的最后一个元素。

复杂度

常量。

迭代器有效性

无变化。

数据竞争

对 set 的访问,无论是非 const 版本还是 const 版本都不会修改 set 容器。同时访问 set 的元素是安全的。

异常安全

此函数从不抛出异常。

示例 1

我们来看一个 rbegin() 函数的简单示例

输出

Elements are: 
50
40
30
20
10

在上面的示例中,rbegin() 函数用于返回一个指向 myset 集合中最后一个元素的反向迭代器。

因为 set 以键的排序顺序存储元素,所以遍历 set 将得到上述顺序,即键的排序顺序。

示例 2

让我们看一个使用 while 循环以反向顺序遍历 set 的简单示例

输出

ddd
ccc
bbb
aaa

在上面的示例中,我们使用 while 循环以相反的顺序遍历集合,并且 rbegin() 函数初始化集合的最后一个元素。

因为 set 以键的排序顺序存储元素,所以遍历 set 将得到上述顺序,即键的排序顺序。

示例 3

让我们看一个简单的例子来获取反向集合的第一个元素

输出

The first element in the reversed set is 30.
The set is: 10 20 30
The reversed set is: 30 20 10
After the erasure, the first element in the reversed set is 20.

示例 4

让我们看一个简单的例子来排序和计算最高分数

输出

Marks
______________________
465
410
400
350
290

Highest Marks is: 465

在上面的例子中,实现了一个名为 marks 的集合,其中 marks 是键。这使我们能够利用集合的自动排序并识别最高分数。


下一主题Set rend() 函数