首页 > 代码库 > 面向对象程序设计上机练习十二(运算符重载)(SDUTOJ1274)

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

http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1274

题目描述

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

输入

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

输出

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

示例输入

2.3 5.43.4

示例输出

5.7

来源

zlh
#include <iostream>using namespace std;class Complex{public:    Complex(double r,double i)    {        rm=r;        im=i;    }    friend double operator +(double &c1,Complex &c2);    void display();private:    double rm,im;};double operator+(double &c1,Complex &c2){    return double(c1+c2.rm);}int main(){    double x,y,z,q;    cin>>x>>y>>z;    Complex c1(x,y);    q=z+c1;    cout<<q<<endl;    return 0;}

 

 

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