public member function
<array>

std::array::crend

const_reverse_iterator crend() const noexcept;
Return const_reverse_iterator to reverse end
Returns a const_reverse_iterator pointing to the theoretical element preceding the first element in the vector, which is considered its reverse end.

A const_reverse_iterator is an iterator that points to const content and iterates in reverse order. This iterator can be increased and decreased (unless it is itself also const), just like the iterator returned by array::rend, but it cannot be used to modify the contents it points to.

Parameters

none

Return Value

A const_reverse_iterator to the reverse end of the sequence.

Member type const_reverse_iterator is a reverse random access iterator type that points to a const element (see array member types).

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// array::crbegin/crend
#include <iostream>
#include <array>

int main ()
{
  std::array<int,6> myarray = {10, 20, 30, 40, 50, 60} ;

  std::cout << "myarray backwards:";
  for ( auto rit=myarray.crbegin() ; rit < myarray.crend(); ++rit )
    std::cout << ' ' << *rit;   // cannot modify *rit

  std::cout << '\n';

  return 0;
}

Output:
myarray backwards: 60 50 40 30 20 10


Complexity

Constant.

Iterator validity

No changes.

Data races

No contained elements are accessed by the call, but the iterator returned can be used to access them. Concurrently accessing or modifying different elements is safe.

Exception safety

No-throw guarantee: this member function never throws exceptions.
The copy construction or assignment of the returned iterator is also guaranteed to never throw.

See also