C++ Deque::cend() Function



The C++ std::deque::cend() function is used to return a constant iterator to the end of the deque. This iterator points to the position past the last element, ensuring that no modifications can be made to the deque through it. The cend() function iterate over a deque in a read-only manner, providing a way to traverse the container without altering its elements.

Syntax

Following is the syntax for std::deque::cend() function.

const_iterator cend() const noexcept;

Parameters

It does not accepts any parameters

Return value

It returns a constant iterator which points to past-the-end element of the deque.

Exceptions

This function never throws exception.

Time complexity

The time complexity of this function is Constant i.e. O(1)

Example

In the following example, we are going to consider the basic usage of the cend() function.

#include <iostream>
#include <deque>
int main()
{
    std::deque<char> a = {'A', 'B', 'C', 'D'};
    for (auto x = a.cbegin(); x != a.cend(); ++x) {
        std::cout << *x << " ";
    }
    std::cout << std::endl;
    return 0;
}

Output

Output of the above code is as follows −

A B C D

Example

Consider the another scenario, where we are going to iterate over the deque in reverse order.

#include <iostream>
#include <deque>
int main()
{
    std::deque<int> a = {1, 22, 333, 4444};
    for (auto x = a.crbegin(); x != a.crend(); ++x) {
        std::cout << *x << " ";
    }
    std::cout << std::endl;
    return 0;
}

Output

Following is the output of the above code −

4444 333 22 1

Example

In the following example, we are going to find an element in a deque using find() with constant iterators.

#include <iostream>
#include <deque>
#include <algorithm>
int main()
{
    std::deque<char> a = {'A', 'B', 'C', 'D'};
    auto x = std::find(a.cbegin(), a.cend(), 'B');
    if (x != a.cend()) {
        std::cout << "Element Found : " << *x << std::endl;
    } else {
        std::cout << "Element Not Found." << std::endl;
    }
    return 0;
}

Output

If we run the above code it will generate the following output −

Element Found : B
deque.htm
Advertisements