Реферат: Разработка библиотечных средств

Matrix<VARTYPE> extract(dim, dim, dim=0, dim=0);// извлечь часть матрицы

Matrix<VARTYPE>& newsize(dim, dim=1);// установить новые размеры

void swap_line(dim, dim);//обмен строками матрицы

void swap_column(dim, dim);// обмен столбцами матрицы

friend Matrix<VARTYPE> operator+(const Matrix<VARTYPE>&,const Matrix<VARTYPE>&);//A-B

friend Matrix<VARTYPE> operator-(const Matrix<VARTYPE>&,const Matrix<VARTYPE>&);//A-B

friend Matrix<VARTYPE> operator*(const Matrix<VARTYPE>&,const Matrix<VARTYPE>&);//A*B

friend Matrix operator*(const double&,const Matrix<VARTYPE>&); //k*A

friend Matrix operator*(const Matrix<VARTYPE>&, const double&); //A*k

friend ostream& operator<<(ostream&,Matrix<VARTYPE>&);

// потоковый вывод матрицы

friend int operator>>(istream&,Matrix<VARTYPE>&);

// потоковый ввод существ. матрицы

// 0 - без. ошибок, 1 - была ошибка

dim read(ifstream&); // файловое чтение и запись матрицы

dim write(ofstream&);// в ее внутреннем, двоичном представлении.

friend VARTYPE operator %(const Matrix<VARTYPE>&,const Matrix<VARTYPE>&);

//Функция ошибок

void ERROR_MATRIX(dim) const;

};

// Реализация класса матриц

template <class VARTYPE>

Matrix<VARTYPE>::Matrix(dim M, dim N)

{

m=M;

n=N;

matr=new VARTYPE[m*n];

if(!matr) ERROR_MATRIX(1);

setmem(matr,sizeof(VARTYPE)*m*n,0);

К-во Просмотров: 641
Бесплатно скачать Реферат: Разработка библиотечных средств