SDUT OJ类型转换函数的应用

题目描述

处理一个复数与一个double数相加的运算,结果存放在一个double型变量d1中,输出d1的值。定义Complex(复数)类,在成员函数中包含重载类型转换运算符:operator double(){return real;}

输入

输入占两行:
第1行是一个复数的实部和虚部,数据以空格分开。
第2行是一个实数。

输出

输出占一行,复数的实部和实数之和,小数点后保留1位。

示例输入

2.3 5.4
3.4

示例输出

5.7

#include <iostream>
#include <string>
#include <algorithm>

using namespace std;

class Complex
{
    private:
      double real;
      double imag;
    public:
      Complex()
      {
          real=0;
          imag=0;
      }
      Complex(double r, double i)
      {
          real=r; imag=i;
      }
      operator double()
      {
          return real;
      }
      void sett()
      {
          cin>>real>>imag;
      }
};

int main()
{
    double dd;
    Complex c1;
    c1.sett();
    cin>>dd;
    dd=dd+c1;
    cout<<dd<<endl;

    return 0;
}
原文地址:https://www.cnblogs.com/yspworld/p/4025593.html