In this **HackerRank Operator Overloading problem in c++,** You are given a main() function that takes a set of inputs to create two matrices and prints the result of their addiction. You need to write the class Matrix which has a member an of type vector<vector<int> >. You also need to write a member function to overload the operator +. The function's job will be to add two objects of Matrix-type and return the resultant Matrix.

## HackerRank Operator Overloading in C++ problem solution

class Matrix
{
public:
Matrix(){}
vector< vector<int> > a;
};
Matrix operator+(Matrix& a,Matrix b)
{
Matrix c;
c.a.resize(a.a.size());
for(int i=0;i<c.a.size();i++)
{
c.a[i].resize(a.a[i].size());
}
for(int i=0;i<a.a.size();i++)
{
for(int j=0;j<a.a[i].size();j++)
{
c.a[i][j]=a.a[i][j]+b.a[i][j];
}
}
return c;
}