C++ Vector Library - operator== Function


The C++ function std::vector::operator== tests whether two vectors are equal or not.

Operator == first checks the size of both container, if sizes are same then it compares elements sequentially and comparison stops at first mismatch.


Following is the declaration for std::vector::operator== function form std::vector header.

template <class T, class Alloc>
bool operator== (const vector<T,Alloc>& v1, const vector<T,Alloc>& v2);


  • v1 − First vector.

  • v2 − Second vector.

Return value

Returns true if both vectors are equal otherwise false.


This function never throws exception.

Time complexity

Linear i.e. O(n)


The following example shows the usage of std::vector::operator== function.

#include <iostream>
#include <vector>

using namespace std;

int main(void) {
   vector<int> v1;
   vector<int> v2;

   if (v1 == v2)
      cout << "v1 and v2 are equal" << endl;

   v1.resize(10, 100);

   if (!(v1 == v2))
      cout << "v1 and v2 are not equal" << endl;

   return 0;

Let us compile and run the above program, this will produce the following result −

v1 and v2 are equal
v1 and v2 are not equal
Kickstart Your Career

Get certified by completing the course

Get Started