C ++中的DEQUE CRBEGIN()

给出的任务是显示C ++中deque::crbegin()的工作方式。

双端队列是双端队列,它在每个端(即前端和后端)都提供高性能的插入和删除,而矢量在端(即仅后端)提供高性能的插入与之相反。

此外,它还提供对组件的随机访问。尽管可以使用insert()出队将零件插入替代组件之间,但是其性能并不像矢量那样明智。

什么是deque::crbegin()?

Deque::crbegin(),其中crbegin是恒定的反向开始,它表示恒定地反向开始,或者换句话说,它返回constant_reverse_iterator。

什么是常量迭代器?

常量迭代器不是用于修改的东西。它的主要目的是访问它们。为了修改元素,我们使用non_const迭代器。

语法

dequename.crbegin()

返回const_reverse_iterator以从开始反向-

返回一个const_reverse_iterator通知到容器中的最后一部分(即,其反向开始)。

返回函数-

逆序开始的const_reverse_iterator。

成员类型const_reverse_iterator可以是指向const部分的反向随机访问迭代器类型(请参见双端队列成员类型)。

示例

#include <iostream>
#include <deque>
int main (){
   std::deque<int> mydeque = {1,2,3,4,5};
   std::cout << "mydeque backwards:";
   for (auto rit = mydeque.crbegin(); rit != mydeque.crend(); ++rit)
      std::cout << ' '<< *rit;
   std::cout << '\n';
   return 0;
}

输出结果

如果我们运行上面的程序,它将生成以下输出-

mydeque backwards: 5 4 3 2 1