面向对象程序设计上机练习十二(运算符重载)

题目描述

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

输入

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

输出

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

示例输入

2.3 5.4
3.4

示例输出

5.7
#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

class Complex
{
public:
    void setdata()
    {
        cin>>real>>image;
    }
    double operator+(double a);
private:
    double real;
    double image;
};
double Complex::operator+(double a)
{
    double x;
    x=real+a;
    return(x);
}

int main()
{
    Complex a;
    double b,c;
    a.setdata();
    cin>>b;
    c=a+b;
    printf("%.1lf\n",c);
    return 0;
}

 

 
posted @ 2014-10-24 19:32  夏迩  阅读(103)  评论(0)    收藏  举报