/*功能:矩阵的运算作者:wind日期:2013-11-29*/#include <iostream>#include <string>using namespace std;/************************************************************/class Reckle{public: Reckle() { m_iA = 0; m_iB = 0; m_iC = 0; m_iD = 0; } void set(double aA,double aB,double aC,double aD); void get()const; Reckle operator + (Reckle c1); Reckle operator - (Reckle c1); void display(Reckle c1);private: double m_iA; double m_iB; double m_iC; double m_iD;};/************************************************************/void Reckle::set(double aA,double aB,double aC,double aD){ m_iA = aA; m_iB = aB; m_iC = aC; m_iD = aD;}void Reckle::get()const{ cout<<"The result is:"<<endl; cout<<"("<<m_iA<<","<<m_iB<<")"<<endl; cout<<"("<<m_iC<<","<<m_iD<<")"<<endl;}Reckle Reckle::operator + (Reckle c1){ Reckle c; c.m_iA = m_iA + c1.m_iA; c.m_iB = m_iB + c1.m_iB; c.m_iC = m_iC + c1.m_iC; c.m_iD = m_iD + c1.m_iD; return c;}Reckle Reckle::operator - (Reckle c1){ Reckle c; c.m_iA = m_iA - c1.m_iA; c.m_iB = m_iB - c1.m_iB; c.m_iC = m_iC - c1.m_iC; c.m_iD = m_iD - c1.m_iD; return c;}
void Reckle::display(Reckle c1){ string n; Reckle c; cout<<"Please input the sign(-/+):"; cin>>n; if ("-" == n) { c = operator- (c1); cout<<"The result is:"<<endl; cout<<"("<<c.m_iA<<","<<c.m_iB<<")"<<endl; cout<<"("<<c.m_iC<<","<<c.m_iD<<")"<<endl; } else if ("+" == n) { c = operator+ (c1); cout<<"The result is:"<<endl; cout<<"("<<c.m_iA<<","<<c.m_iB<<")"<<endl; cout<<"("<<c.m_iC<<","<<c.m_iD<<")"<<endl; } else { cout<<"The operator is error"; }}/************************************************************/int main(void){
Reckle c1,c2; double x = 0; double y = 0; double z = 0; double h = 0;
cout<<"请输入第一个矩阵(两行两列):"<<endl; cin>>x>>y>>z>>h; c1.set(x,y,z,h);
cout<<"请输入第二个矩阵(两行两列):"<<endl; cin>>x>>y>>z>>h; c2.set(x,y,z,h);
c1.display(c2); system("pause"); return 0;}operator重载之矩阵的运算—C++

最后更新于 2022-12-25
部分内容可能已过时,请注意信息时效。
本文采用 CC BY-NC-SA 4.0 许可,转载请注明出处与作者。
支持一下
如果这篇文章对你有帮助,欢迎打赏或分享。
评论