如题,要求实现:
1、复数类含两个参数的构造函数,一个为实部,一个为虚部。
2、实现-加-减-乘运算符重载运算符重载功能,并实现返回值为复数类。
3、Show出结果。
例如输入
7 8
7 8
输出:
y
n
ps:题目应该写错了,是重载 ==、!= 运算符~
#include<iostream> using namespace std; class Cmycomplex { private: double real,imag; public: Cmycomplex(double r=0,double i=0);//构造函数设默认值,或者重载构造函数 void Set(double x,double y); int operator==(Cmycomplex &z); int operator!=(Cmycomplex &z); }; Cmycomplex::Cmycomplex(double r,double i)//类外定义时无需再写默认值 { real=r; imag=i; } void Cmycomplex::Set(double x,double y) { real=x; imag=y; } int Cmycomplex::operator==(Cmycomplex &z)//其实也是只需要传递一个参数 { if((real==z.real)&&(imag==z.imag)) { return 1; } else return 0; } int Cmycomplex::operator!=(Cmycomplex &z) { if((real==z.real)&&(imag==z.imag)) { return 0; } else return 1; }
//StudybarCommentBegin int main() { Cmycomplex z1(3,4),z2(7),z3; double x,y; cin>>x>>y; z1.Set(x,y); cin>>x>>y; z2.Set(x,y); if(z1==z2) cout<<"y\n"; else cout<<"n\n"; if(z1!=z2) cout<<"y\n"; else cout<<"n\n"; } //StudybarCommentEnd
-END