📜  C++ STL-Deque.crbegin()函数(1)

📅  最后修改于: 2023-12-03 14:39:50.877000             🧑  作者: Mango

C++ STL-Deque.crbegin()函数

在 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() 函数返回一个反向迭代器,可用于倒序遍历双端队列中的元素。