CVector和CMatrix重定义错误???
***********************************************
本程序来源于 黄振侃 数值计算-微分方程数值解 北京工业大学出版社 2006年10月
***********************************************
*/
//向量类(CVector)与矩阵类(CMatirx)的声明与实况适两个基础类,后面的很多算法 都用到了这两个类。
//Matrix.h:向量类的声明
#define NULL 0
#define DEFAULT_NUM 5
#define EPSILON 1e-6
#include<math.h>
//n的阶乘,为避免溢出返回值用double型
double Factorial(int n);
//c(m,n)的组合数,为避免溢出返回值用double型
double Combination (int m,int n);
//求x的n次方,当x=0时,无论n为什么值,返回值都是0
double Mypower(double x,int n);
//向量(数组)类,下标从0开始
class CVector
{
public:
CVetcot(int size=DEFAULT_NUM);//构造函数
Cvector(CVector& v);//拷贝构造函数
virtual ~CVector();//析构函数
public:
double &operator[](int index);//重载[]运算符
CVector& operator=(CVector &v);//重载=运算符
void Resize(int new_size);//重新定义向量元素个数
void Print();//打印向量
int GetSize(){return m_nSize;}//取得数组的长度和缓冲区地址
double *GetData(){return m_pdData;}
private:
double* m_pdData;//指向向量使用的内存缓冲区
int m_nSize;//元素个数
double m_nDummy;//下标出界时,返回的元素
};
//矩阵类,下标从0开始矩阵
class CMatrix
{
public:
CMatrix(int rows=DEFAULT_NUM,int cols=DEFAULT_NUM);//构造函数,应有缺省值
CMatrix(CMatrix &m);//拷贝构造函数
virtual ~CMatrix();//析构函数
public:
CVector &operator[] (int inedex);//重载[]运算符
CMatrix &operator = (CMatrix& m);//重载=运算符
void Resize(int new_rows,int new_cols);//改变矩阵的大小
void Print();// 打印矩阵
CMatrix GetNagtiveMatrix();//得到逆矩阵
//
int GetRow(){return m_nRows;}
int GetCol(){return m_nCols;}
//
friend CMatrix operator* (CMatrix& a,CMatrix& b);//重载矩阵乘法运算
private:
CVector* m_paryData;//矩阵行向量的指针数组
int m_nRows,m_nCols;//矩阵的行数,列数
void SetData(CMatrix& m);//复制已知矩阵到自身
};
错误如下:
Compiling...
Euler.cpp
c:\matrix.h(23) : error C2011: 'CVector' : 'class' type redefinition
c:\matrix.h(45) : error C2011: 'CMatrix' : 'class' type redefinition
相关推荐
最新2026黑龙江省村界村级行政区划矢量shp数据下载
最新2026黑龙江省村界村级行政区划矢量shp数据,几千个面,属性包含村、社区乡、街道镇、市多级属性,非常准确
政府科技管理者在推动科技成果转化过程中,如何精准匹配供需双方并提高对接效率?.docx
政府科技管理者在推动科技成果转化过程中,如何精准匹配供需双方并提高对接效率?
密码学基于大整数模运算的减法操作序列分析:4096位输入在固定模数下的逐步约简过程研究
内容概要:该文档记录了对一个大整数模运算(mod 4096)过程中连续减法操作的详细执行过程,主要围绕输入值与固定大数N之间的多次减法运算展开。文档展示了每轮减法前的临时值(temp)、当前N的十六进制表示以及两者的差值(diff),并标注了具体的减法编号、计算周期和输入位位置。整个过程共涉及上千次减法尝试,最终得到一个非负余数结果(FINAL),表明这是某种高精度模减算法(如Montgomery Reduction或类似逐位迭代方法)的实现追踪。文档的核心是展示大数模运算中逐步逼近余数的计算轨迹,强调二进制高位对齐下的条件
基于转子磁场定向的飞轮储能机侧PQ控制与网侧恒压双闭环协调策略研究(Simulink仿真实现)
内容概要:本文研究了基于转子磁场定向的飞轮储能系统在机侧与网侧的协调控制策略,重点实现了机侧PQ控制与网侧恒压双闭环控制的Simulink仿真实现。通过转子磁场定向技术,对飞轮储能系统的有功与无功功率进行精确解耦控制,有效提升了系统在并网运行时的稳定性与动态响应性能。网侧采用恒压双闭环控制策略,确保直流母线电压稳定,实现能量的高效双向流动。文中详细阐述了控制策略的设计原理、数学建模过程及仿真模型的构建方法,并通过仿真验证了该协调策略在功率平滑、电压支撑、动态调节及系统稳定性方面的有效性。; 适合人群:具备电力电子、电力系统或自动控制基础知识,从事新能源储能系统、飞轮储能技术、电力系统仿真等相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握飞轮储能系统在并网工况下的机侧PQ解耦控制原理;② 学习基于转子磁场定向的矢量控制方法在储能系统中的应用;③ 实现并优化机侧与网侧双闭环协调控制策略,提升系统动态性能与稳定性;④ 为后续开展混合储能系统、微电网能量管理及高比例可再生能源接入系统的控制研究提供技术基础与仿真参考。; 阅读建议:建议结合Simulink仿真模型逐步理解控制结构设计,重点关注坐标变换、PI控制器参数整定、双闭环耦合关系及仿真结果分析,可尝试修改控制参数或工况设置以深入掌握系统响应特性。
2026海南省行政区划矢量图层-省市县乡镇四级行政区划数据下载
2026最新海南省行政区划矢量图层数据,包含省、市、县、乡镇四级行政区划数据,wgs84坐标


