📄 cmatrix.h
字号:
// CMatrix.h: interface for the CMatrix class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CMATRIX_H__C4B3EEF5_09EA_11D3_B596_0000000038B2__INCLUDED_)
#define AFX_CMATRIX_H__C4B3EEF5_09EA_11D3_B596_0000000038B2__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
///////////////////////////////////
// CMatrix Ver 1999.12.9 //
// Programmed by HuYu //
///////////////////////////////////
class CMatrix
{
public:
double * getdatabuffer();
void addrow(UINT r,double dat[]);
void addcol(UINT c,double dat[]);
void addrow(UINT r,double dat );
void addcol(UINT c,double dat );
UINT getsize();
UINT getcols();
UINT getrows();
double mod();
void deletecol(unsigned c);
void deleterow(unsigned r);
void MoveRow(unsigned row1,unsigned row2);
int calroot();
void setvalue(double var);
void setvalue(unsigned r,unsigned c);
void setvalue(unsigned r,unsigned c,double val[]);
int savematrix(char *fn);
double det();
//构造函数&析构函数:
CMatrix(unsigned r);
CMatrix();
CMatrix(unsigned rs,unsigned cs);
CMatrix(const CMatrix & mtr);
CMatrix(unsigned rs,unsigned cs,double val[]);
virtual ~CMatrix();
//一般成员函数:
void setvalue(double val[]);
void setelem(unsigned row,unsigned col,double val);
void delelem(unsigned r,unsigned c);
void unit();
//重载成员函数:
double operator () (unsigned row,unsigned col);
CMatrix & operator = (const CMatrix & mtx);
//重载友员函数:
friend CMatrix operator + (CMatrix p,CMatrix q);
friend CMatrix operator - (CMatrix p,CMatrix q);
friend CMatrix operator * (CMatrix p,CMatrix q);
friend CMatrix operator | (CMatrix p,CMatrix q);
friend CMatrix operator % (CMatrix p,CMatrix q);
friend CMatrix operator * (double p,CMatrix q);
friend CMatrix operator / (CMatrix p,double q);
friend CMatrix operator ~ (CMatrix p);
friend CMatrix operator ! (CMatrix p);
friend CMatrix operator - (CMatrix p);
//变量:
private:
unsigned cols ;
unsigned rows ;
unsigned size ;
double * elems;
int cinv(double a[],int n);//求逆矩阵的函数;
};
#endif // !defined(AFX_CMATRIX_H__C4B3EEF5_09EA_11D3_B596_0000000038B2__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -