C++ Standard Library C++ STL Library

C++ <deque> - cend() Function



The C++ deque::cend function returns the constant iterator (const_iterator) pointing to the past-the-last element of the deque container. The past-the-last element of the deque is the theoretical element that follows the last element. It does not point to any element, and hence could not be dereferenced.

C++ cbegin cend

Note: A const_iterator is an iterator that points to constant value. The difference between iterator and const_iterator is that the const_iterator cannot be used to modify the contents it points to, even if the deque element is not itself constant.

Syntax

const_iterator cend() const noexcept;

Parameters

No parameter is required.

Return Value

A const_iterator to the past-the-last element of the sequence container.

Time Complexity

Constant i.e, Θ(1).

Example:

In the example below, the deque::cend function returns the const_iterator pointing to the past-the-last element of the deque MyDeque.

#include <iostream>
#include <deque>
using namespace std;
 
int main (){
  deque<string> MyDeque{"Alpha","Coding","Skills"};
  deque<string>::const_iterator cit;

  cit = MyDeque.cend();
  cit--;
  cout<<*cit<<" ";
  cit--;
  cout<<*cit<<" ";
  cit--;
  cout<<*cit<<" ";
  return 0;
}

The output of the above code will be:

Skills Coding Alpha

Example:

Lets see another example where the deque called MyDeque contains integer values and deque::cend function is used with deque::cbegin function to specify a range including all elements of the deque container.

#include <iostream>
#include <deque>
using namespace std;
 
int main (){
  deque<int> MyDeque{10, 20, 30, 40, 50};
  deque<int>::const_iterator cit;

  for(cit = MyDeque.cbegin(); cit != MyDeque.cend(); ++cit)
    cout<<*cit<<" ";

  return 0;
}

The output of the above code will be:

10 20 30 40 50 

❮ C++ <deque> Library

5