C++——有两个矩阵a和b,均为2行3列。求两个矩阵之和。重载运算符“+”,使之能用于矩阵相加。(如c=a+b)
没注释的源代码
#include <iostream>
using namespace std;
class matrix
{
private:
int m[2][3];
public:
matrix();
void input();
void display();
friend matrix operator+(matrix&,matrix&);
};
matrix::matrix()
{
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
m[i][j]==0;
}
}
}
void matrix::input()
{
cout<<"the matrix:"<<endl;
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
cin>>m[i][j];
}
}
}
void matrix::display()
{
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
cout<<m[i][j]<<" ";
}
cout<<endl;
}
}
matrix operator+(matrix&a,matrix&b)
{
matrix c;
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
{
c.m[i][j]=a.m[i][j]+b.m[i][j];
}
}
return c;
}
int main()
{
matrix a,b,c;
a.input();
b.input();
cout<<"the matrix a:"<<endl;
a.display();
cout<<"the matrix b:"<<endl;
b.display();
c=a+b;
cout<<"the matrix c:"<<endl;
c.display();
return 0;
}