实现两个矩阵的相加,但好像那个void operator+(Rectangle R1,Rectangle R2);函数实现有错误,
请高手指点
#include<iostream>
using namespace std;
int const N=2;
class Rectangle
{
private:
int Array[N][N];
public:
Rectangle();
void operator+(Rectangle R1,Rectangle R2);
void display();
void setR();
};
Rectangle::Rectangle()
{
for(int j=0;j<N;j++)
for(int i=0;i<N;i++)
Array[j][i]=0;
}
void Rectangle::setR()
{
for(int j=0;j<N;j++)
for(int i=0;i<N;i++)
cin>>Array[j][i];
}
void Rectangle::operator+(Rectangle R1,Rectangle R2)
{
for(int j=0;j<N;j++)
for(int i=0;i<N;i++)
R1.Array[j][i]=R1.Array[j][i]+R2.Array[j][i];
}
void Rectangle::display()
{
for(int j=0;j<N;j++)
{for(int i=0;i<N;i++)
cout<<Array[j][i]<<'\t';
cout<<endl;
}
}
int main()
{
Rectangle R1,R2;//R3;
R1.setR();
cout<<"输出R1: \n";
R1.display();
R2.setR();
cout<<"输出R2: \n";
R2.display();
//R1与R2相加后把值给R1
R1=R1+R2;
cout<<"输出R1: \n";
R1.display();
return 0;
}