The C++ std::deque::crbegin() function is used to return a constant reverse iterator pointing to the last element in the deque. This iterator traverse the deque from the end to the beginning, ensuring elements are accessed in reverse order. It is useful for iterating over the elements of a deque in reverse order without altering their values.
SyntaxThe constant iterator, prevents the modification of the elements that point to, providing the read-only access.
Following is the syntax for std::deque::crbegin() function.
const_reverse_iterator crbegin() const noexcept;Parameters
It does not accepts any parameters.
Return valueIt returns a reverse iterator that point to the last element in the deque.
ExceptionsThis function never throws exception.
Time complexityThe time complexity of this function is Constant i.e. O(1)
ExampleIn the following example, we are going to consider the basic usage of crbegin() function.
#include <iostream> #include <deque> int main() { std::deque<char> a = {'A', 'B', 'C', 'D'}; std::deque<char>::const_reverse_iterator x = a.crbegin(); std::cout << " " << *x << std::endl; return 0; }Output
Output of the above code is as follows −
DExample
Consider the following example, where we are going to use the loop to iterate over the deque in reverse order using crbegin() and crend().
#include <iostream> #include <deque> int main() { std::deque<char> a = {'A', 'B', 'C', 'D'}; for (auto x = a.crbegin(); x != a.crend(); ++x) { std::cout << *x << " "; } return 0; }Output
Following is the output of the above code −
D C B AExample
Let's look at the following example, where we are going to search for the element in the deque while iterating in reverse order.
#include <iostream> #include <deque> #include <algorithm> int main() { std::deque<char> a = {'A', 'B', 'C', 'D'}; auto x = std::find(a.crbegin(), a.crend(), 'C'); if (x != a.crend()) { std::cout << "Element found at position: " << std::distance(a.crbegin(), 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 at position: 1
deque.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4