?? matrix.h
字號:
// Matrix.h: interface for the Matrix class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_MATRIX_H__26B73AD4_D19D_11D4_B14F_000021E94C7D__INCLUDED_)
#define AFX_MATRIX_H__26B73AD4_D19D_11D4_B14F_000021E94C7D__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class Matrix
{
protected:
public:
double *Data; //數據存放區
UINT M,N; //矩陣 M*N
UINT i,j; //運算循環變量
public:
#ifdef _DEBUG
BOOL Print(CString FileName/*文件名*/, int Znum/*整數位*/,int Xnum/*小數位*/);
BOOL Print(FILE *out /*文件句柄*/, CString FileName,int Znum/*整數位*/,int Xnum/*小數位*/);
#endif //_DEBUG
Matrix matChole(int *);
double Trace(); //M*M 矩陣 對角線之和
BOOL DuiCheng();
Matrix MatTran(); //矩陣轉置
Matrix MatInv(); //矩陣求里 對稱矩陣(上)
Matrix MatInv_All(); //矩陣求里 全
Matrix operator * (Matrix &); //矩陣相乘 A=B*C
Matrix operator * (double dScaler); //矩陣相乘(放大) A=B*a(常數)
Matrix operator + (double a); //矩陣相加 A=B+a(常數)
Matrix operator + (Matrix &); //矩陣相加 A=B+C
Matrix operator - (double a); //矩陣相加 A=B-a(常數)
Matrix operator - (Matrix &); //矩陣相加 A=B-C
BOOL operator -= (double a); //矩陣減一常數
BOOL operator -= (Matrix &); //相減 矩陣 A+=B A+B-->A
BOOL operator += (double a); //矩陣加一常數
BOOL operator += (Matrix &); //相加 矩陣 A+=B A+B-->A
BOOL operator = (Matrix &); //復制 矩陣
void operator = (double a); //將矩陣各元素置 a
BOOL Alloc(UINT m,UINT n); //調整矩陣大小
BOOL Alloc(UINT m); //調整矩陣大小
UINT GetRow(); //返回 行
UINT GetCol(); //返回 列
double GetData(UINT m,UINT n);
BOOL SetData(UINT m,UINT n ,double a); //設置數據 m 行 n 列 數據 a
double GetData(UINT m/*,UINT n=0*/);
BOOL SetData(UINT m/*,UINT n=0*/ ,double a); //設置數據 m 行 n =1 列 數據 a
Matrix( Matrix &); // 復制 矩陣 生成新的矩陣
Matrix(UINT m,UINT n); // 定義 m*n 階矩陣 Data 返回 NULL 數據錯誤
Matrix(UINT m); // 定義 m*1 階矩陣 Data 返回 NULL 數據錯誤
Matrix();
virtual ~Matrix();
BOOL Success; //申請(運算)是否成功
};
#endif // !defined(AFX_MATRIX_H__26B73AD4_D19D_11D4_B14F_000021E94C7D__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -