The C++ vector::operator[] function is used to reference the element at the position specified inside the operator . The main distinction between operator[] function and the at() function is that the at() method throws an out-of-range exception when the location is outside the size of the vector, whereas this operator results in undefinable behavior. The time complexity of the operator[] function is constant.
SyntaxFollowing is the syntax for C++ vector::operator[] Function −
reference operator[] (size_type n);const_reference operator[] (size_type n) const;Parameters
n − It indicates the posiion of an element present in the container.
Example 1Let's consider the following example, where we are going to use the opertor=() function.
#include <iostream> #include <vector> using namespace std; int main(void) { vector<int> myvector = {1, 2, 3, 4, 5}; for (int x = 0; x < myvector.size(); ++x) cout << myvector[x] << endl; return 0; }Output
When we compile and run the above program, this will produce the following result −
1 2 3 4 5Example 2
Considering the another scenario, where we are going to take the string type.
#include<iostream> #include<vector> using namespace std; int main(){ vector<string> myvector{"BMW","AUDI","RS7","DUCATI"}; for(int x=0; x<myvector.size(); x++) cout<<myvector.operator[](x)<<" "; return 0; }Output
On running the above program, it will produce the following result −
BMW AUDI RS7 DUCATIExample 3
In the following example, we are going to use the push_back() function to insert the elements and applying the operator[].
#include <iostream> #include <vector> using namespace std; int main(){ vector<string> cars; cars.push_back("RS7"); cars.push_back("DUCATI"); cars.push_back("VERNA"); cars.push_back("CRUZE LT"); cout <<"Result : " << cars[2]; return 0; }Output
When we execute the above program, it will produce the following result −
Result : VERNAExample 4
Following is the example, where we are going to print the position of the element that is not divisible by 2.
#include <iostream> #include <vector> using namespace std; int main(){ vector<int> mytutorial; mytutorial.push_back(1); mytutorial.push_back(2); mytutorial.push_back(3); mytutorial.push_back(4); mytutorial.push_back(5); mytutorial.push_back(6); mytutorial.push_back(7); for (int i = 0; i < mytutorial.size(); ++i) { if (i % 2 != 0) { cout << mytutorial[i]; cout << " "; } } return 0; }Output
On running the above program, it will produce the following result −
2 4 6
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