#include "stdafx.h"
#include <iostream.h>
#include <iomanip.h>
class matrix{
int row;
int col;
double **M;
public:
matrix(int r=0,int l=0);//
matrix(matrix &A);
void input();//input matrix
void output();//show matrix
matrix operator +(matrix &M1);//plus
matrix operator -(matrix &M2);//minus
matrix operator *(matrix &M3);//multiple
matrix operator ~();//transpose
};
matrix matrix::operator ~ (){
matrix MM(col,row);
for(int i=0;i<row ;i++)
for(int j=0;j<col;j++)
MM.M[j][i]=M[i][j];
return MM;
}
matrix matrix::operator + (matrix &M1){
if( M1.row!=row || M1.col!=col){
cout<<"Can not go on to caculation for non-same size!"<<endl;
return matrix();
}
matrix MM(row,col);
for(int i=0;i<row;i++)
for(int j=0;j<col;j++)
MM.M[i][j]=M[i][j]+M1.M[i][j];
return MM;
}
matrix matrix::operator - (matrix &M1){
if( M1.row!=row || M1.col!=col){
cout<<"Can not go on to caculation for non-same size!"<<endl;
return *this;
}
评论0
最新资源