阅读背景:

OJ-复数类-重载运算符3+

来源:互联网 

问题及代码:

#include <iostream>
#include <iomanip>
using namespace std;
class Complex
{
public:
    Complex();
    Complex(double r);
    Complex(double r,double i);
    operator double();
    void display();
private:
    double real;
    double imag;
};
Complex::Complex()
{

}
Complex::Complex(double r)
{
    real=r;
    imag=0;
}
Complex::Complex(double r,double i)
{
    real=r;
    imag=i;
}


Complex::operator double()
{
    return real;
}

void Complex::display()
{
    cout<<"("<<real<<", "<<imag<<")"<<endl;
}

int main()
{
    cout<<setiosflags(ios::fixed);
    cout<<setprecision(2);
    double real,imag;
    cin>>real>>imag;
    Complex c1(real,imag);
    double d1;
    cin>>d1;
    d1=d1+c1;
    cout<<"d1="<<d1<<endl;
    Complex c2=Complex(d1);
    cout<<"c2=";
    c2.display();
    return 0;
}
#include <iostream>
#include <ioman



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: