C++ STL 中的 list crbegin() 和 crend() 函数
给定任务是展示 C++ 中 list crbegin() 和 crend() 函数的工作原理。
list::crbegin() 和 list::crend() 函数是 C++ 标准模板库的一部分。
需要包含 <list> 头文件才能调用这些函数。
- list::crbegin()
此函数返回一个常量迭代器,该迭代器指向列表的末尾元素,这将是列表的反向开头。它可以用于列表的反向遍历,但不能更改列表中的值,这意味着 crbegin() 函数只能用于迭代。
语法
List_Name.crbegin()
参数
该函数不接受任何参数。
返回值
该函数返回一个常量反向迭代器,该迭代器指向列表的反向开头元素,即列表的末尾。
- list::crend()
此函数返回一个常量迭代器,该迭代器指向列表的末尾元素。它可以用于列表的反向遍历,但不能更改列表中的值,这意味着 crend() 函数只能用于迭代。
语法
List_Name.crend()
参数
该函数不接受任何参数。
返回值
该函数返回一个常量反向迭代器,该迭代器指向列表的反向末尾,即列表的开头。
示例
Input: list<int> Lt={99,34,55}
Output: The last element is 55**解释** -
这里我们创建了一个包含元素 99、34 和 55 的列表。然后我们调用了 crbegin() 函数,它指向列表的反向开头,即列表的末尾。
因此,当我们打印它时,生成的输出为 55,它是列表的最后一个元素。
**下面程序中使用的方案如下** -
- 首先创建一个列表,我们称之为“Ld”,类型为 int,并为其分配一些值。
- 然后开始一个循环遍历列表。
- 然后在循环内创建一个名为“itr”的 auto 类型对象,用于存储 crend() 和 crbegin() 函数的返回值。通过使用 crend() 函数传递列表的第一个元素来初始化“itr”。
- 然后通过编写“itr”不等于使用 crbegin() 函数得到的列表的最后一个元素来指定循环的终止条件。
- 打印 *itr 的值。
算法
Start
Step 1->In function main()
Initialize list<int> Lt={}
Loop For auto itr = Lt.crend() and itr != Lt.crbegin() and itr++
Print *itr
End
Stop示例
#include<iostream>
#include<list>
using namespace std;
int main() {
list<int> Lt = { 33,44,55,66 };
//Printing the elements of the list
cout <<"The elements of the list are : " <<"\n";
for (auto itr = Lt.crend(); itr != Lt.crbegin(); itr++)
cout << *itr << " ";
return 0;
}输出
如果我们运行以上代码,它将生成以下输出 -
The elements of the list are : 4
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP