#include <stdio.h>
#include<iostream.h>
class Tmatr{
private:int cols,rows,**matr;
public:
Tmatr(int rows,int cols);
~Tmatr(){for(int i=0;i<rows;i++)delete[] matr[i];delete[] matr;}
void out();
Tmatr operator+(Tmatr &rhs);
void operator=(Tmatr &hs1);
};
Tmatr::Tmatr(int rows,int cols){
this->cols=cols;
this->rows=rows;
matr=new int*[rows];
for(int i=0;i<rows;i++){
matr[i] = new int[cols];
for(int j = 0;j < cols;j++)matr[i][j]=i+j;
}
}
void Tmatr::out(){
for(int i=0;i<this->rows;i++){
for(int j = 0;j < this->cols;j++) cout<<matr[i][j]<<" ";
cout<<endl;
}
}
void Tmatr::operator=(Tmatr &rhs1){
for(int i=0;i<rows;i++)
for(int j=0;j<cols;j++){
matr[i][j]=rhs1.matr[i][j];
}
}
Tmatr Tmatr::operator+(Tmatr &rhs){
Tmatr c(this->rows,this->cols);
for(int i=0;i<rows;i++)
for(int j=0;j<cols;j++)
c.matr[i][j]= matr[i][j]+rhs.matr[i][j];
return c;
}
void main()
{
Tmatr a(5,5);
Tmatr b(5,5);
Tmatr d(5,5);
d=a+b;
d.out();
}
|