Вам нужно написать operator+
как,
matrix matrix ::operator +(const matrix &matr)
{
matrix final;
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
final.mat[i][j]=mat[i][j]+matr.mat[i][j];
}
}
return final;
}
Используйте final.mat
для доступа к фактическому элементу данных. Также matrix final[2][2]
объявляет двумерный массив типа matrix
. Он не делает то, что вы намереваетесь сделать!