vector::crend() & vector::crbegin() with example

These functions return useful iterators to access vector elements in reverse order (from end to beginning)

Using vector::crend()

It’s a public member function that returns a const_reverse_iterator pointing to the element preceding the first element.
Return Value



A const_reverse_iterator to the reverse 
end of the sequence.

Syntax:

const_reverse_iterator crend() const noexcept;

Using vector::crbegin()

It returns a const_reverse_iterator pointing to the last element in the container (i.e., its reverse beginning)..
Return Value

A const_reverse_iterator to the reverse 
beginning of the sequence.

Syntax:

const_reverse_iterator crbegin() const noexcept;
filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to illustrate working of crbegin() 
// crend()
#include <iostream>
#include <vector>
using namespace std;
  
int main ()
{
  // initializing vector with values
  vector<int> vect = {10, 20, 30, 40, 50};
  
  // for loop with crbegin and crend
  for (auto i = vect.crbegin(); i != vect.crend(); i++)
    cout << ' ' << *i;  //printing results
   
  cout << '\n';
  return 0;
}

chevron_right


Output:

50 40 30 20 10

Applications
crend :
Returns a reverse iterator to the element following the last element of the reversed container. It corresponds to the element preceding the first element of the non-reversed container. This element acts as a placeholder, attempting to access it results in undefined behavior
crbegin :
Returns a reverse iterator to the first element of the reversed container. It corresponds to the last element of the non-reversed container.
Both are used in deque operations, concurrently accessing or modifying different elements is safe.
The copy construction or assignment of the returned iterator is also guaranteed to never throw exception.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : Anish Kumar Arya



Article Tags :
Practice Tags :


1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.