📅  最后修改于: 2023-12-03 14:39:50.877000             🧑  作者: Mango
在 C++ STL 中,deque
是一个双端队列,可用来在队列的两端进行插入、删除操作。
crbegin()
是 deque
容器中的成员函数,它返回一个反向迭代器,指向双端队列的最后一个元素。这个元素的左侧即为队列的头部。
deque<T>::const_reverse_iterator deque::crbegin() const noexcept;
无参数。
一个 const_reverse_iterator
对象,指向双端队列的最后一个元素。
#include <iostream>
#include <deque>
int main() {
std::deque<int> myDeque = {1, 2, 3, 4, 5};
/* 访问反向迭代器 */
auto rBegin = myDeque.crbegin();
auto rEnd = myDeque.crend();
/* 打印每个元素 */
std::cout << "Reversed elements:\n";
for(auto i = rBegin; i != rEnd; ++i) {
std::cout << *i << ' ';
}
return 0;
}
输出:
Reversed elements:
5 4 3 2 1
此示例演示如何使用 crbegin()
访问 deque
容器的元素,并使用反向迭代器打印每个元素(从尾部向头部遍历)。
注意,在此示例中,我们将 crbegin()
返回的迭代器存储在 auto
变量中,因为其类型为 const_reverse_iterator
,而不是普通的 iterator
。
deque
双端队列是 C++ STL 中一个常用的容器,通常用于实现队列和栈等数据结构。crbegin()
函数返回一个反向迭代器,可用于倒序遍历双端队列中的元素。