C++ set crend()

30 Aug 2024 | 3 分钟阅读

C++ set 的 **crend()** 函数用于返回一个 **常量迭代器**,指向 set 的末尾(不是最后一个元素,而是最后一个元素之后的位置),以 **逆序** 方式。这类似于非逆序容器中第一个元素前面的元素。

注意:- 这是一个占位符。此位置不存在任何元素,尝试访问将导致未定义行为。

A **常量迭代器** 是一个指向常量内容的迭代器。

语法

参数

返回值

它返回一个 const_reverse_iterator,指向逆序容器中最后一个元素之后的位置。

复杂度

常量。

迭代器有效性

无变化。

数据竞争

容器被访问。

并发访问 set 的元素是安全的。

异常安全

此函数从不抛出异常。

示例 1

让我们看一个 crend() 函数的简单示例

输出

myset in reverse order: 50 40 30 20 10

在上面的示例中,crend() 函数用于返回一个常量逆向迭代器,指向逆序容器中最后一个元素之后的元素。

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

示例 2

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

输出

ddd
ccc
bbb
aaa

在上面的示例中,我们使用 while 循环以逆序方式常量迭代 set。

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

示例 3

让我们看一个简单的例子

输出

3
2
1

在上面的示例中,set 的元素以逆序返回。

示例 4

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

输出

Salary
______________________
4500
3000
2500
1200
1000

Highest salary: 4500 

在上面的示例中,实现了一个名为 emp 的 set,其中薪资作为键存储。这使我们能够利用 set 中薪资的自动排序功能,从而识别最高薪资。


下一个主题Set empty() 函数