C++ map crend() 函数

30 Aug 2024 | 3 分钟阅读

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

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

注意:常量迭代器是指向常量内容的迭代器。

语法

参数

返回值

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

示例 1

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

输出

z = 300
y = 200
x = 100

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

由于 map 以键的排序顺序存储元素,因此迭代 map 将产生上述顺序,即键的排序顺序。

示例 2

让我们看一个使用 while 循环以逆序迭代 map 的简单示例。

输出

ddd :: 11
ccc :: 13
bbb :: 12	
aaa :: 10

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

由于 map 以键的排序顺序存储元素,因此迭代 map 将产生上述顺序,即键的排序顺序。

示例 3

让我们看一个简单的例子。

输出

Map contains following elements in reverse order:
e = 5
d = 4
c = 3
b = 2
a = 1

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

示例 4

让我们看一个对最高分数进行排序和计算的简单示例。

输出

Salary | ID
______________________
5500   | 50
4500   | 30
3000   | 40
2500   | 20
1000   | 10

Highest salary: 5500 
ID is: 50

在上面的示例中,实现了一个 map emp,其中 ID 作为值存储,薪水作为键存储。这使我们能够利用 map 中的自动排序,并让我们能够识别具有最高薪水元素的 ID。

下一个主题C++ Map