C++ Array Library - crend() Function


Advertisements

Description

The C++ function std::array::crend() returns a constant reverse iterator which points to the past-end element of array. An iterator returned by this method can be used to iterate array contents but cannot be used to modify array contents, even if array object itself is not constant.

Declaration

Following is the declaration for std::array::crend() function form std::array header.

const_reverse_iterator crend() const noexcept();

Parameters

None

Return Value

Returns a reverse constant iterator pointing to the past-end element of the array. This is a place-holder location and doesn't store any actual data. So dereferencing this will cause undefined behavior.

Exceptions

This member function never throws exception.

Time complexity

Constant i.e. O(1)

Example

Let us see how to use reverse iterator to print array contents reverse order.

#include <iostream>
#include <array>

using namespace std;

int main(void) {

   array<int, 5> arr = {10, 20, 30, 40, 50};
   auto s = arr.crbegin();
   auto e = arr.crend();

   while (s < e) {
      cout << *s << " ";
      ++s;
   }

   cout << endl;

   return 0;
}

Let us compile and run the above program, this will produce the following result −

50 40 30 20 10
array.htm
Advertisements