The C++ std::deque::operator[] function allows to access or modify the element at a specific index, similar to how arrays and vetors work. The function takes a single argument, the index, and returns a reference to the element at that position.
SyntaxUnlike at(), it does not perform bounds checking, so accessing an out-of-range index results in undefined behaviour.
Following is the syntax for std::deque::operator[] function.
reference operator[] (size_type n); const_reference operator[] (size_type n) const;Parameters
It returns the element at the specified position in the container.
ExceptionsIt throws undefined behaviour if the index is out of range.
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 the operator[] function.
#include <iostream> #include <deque> int main() { std::deque<char> a = {'A', 'B', 'C', 'D'}; std::cout << "Element at given index : " << a[1] << std::endl; return 0; }Output
Output of the above code is as follows −
Element at given index : BExample
Consider the following example, where we are going to modify the element.
#include <iostream> #include <deque> int main() { std::deque<char> a = {'A', 'B', 'C', 'D'}; a[2] = 'Z'; for (int x = 0; x < a.size(); ++x) { std::cout << a[x] << " "; } std::cout << std::endl; return 0; }Output
Following is the output of the above code −
A B Z DExample
Let's look at the following example, where we are going to access the element that is out of range and observing the output.
#include <iostream> #include <deque> int main() { std::deque<int> a = {01,12,23,34}; std::cout << "Element at given index : " << a[5] << std::endl; return 0; }Output
If we run the above code it will generate the following output −
Element at given index : 0
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