请编写程序,处理一个复数与一个double数相加的运算,结果存放在一个double型的变量d1中,输出d1的值,再以复数形式输出此值。定义Complex(复数)类,在成员函数中包含重载类型转换运算符:
operator double(){return real;}
#include <iostream>
using namespace std;
class Complex{
public:
Complex(){real=0;image=0;}
Complex(double r){real=r; image=0;}//下面complex(d)要用到,一定要记得!!!!
Complex(double r,double i):real(r),image(i){}
void display();
operator double(){return real;}
private:
double real;
double image;
};
void Complex::display(){
cout<<"("<<real<<","<<image<<"i)"<<endl;
}
int main(){
Complex c1(3,4),c2;
double d;
d=2.5+c1;
cout<<"d="<<d<<endl;
c2=Complex(d);//把double型d转化为complex型
cout<<"c2=";
c2.display();
return 0;
}