- /*
- *Copyright (c) 2015,烟台大学计算机学院
- *All rights reserved.
- *文件名称:text.cpp
- *作者:李德彪
- *完成日期:2015年5月16日
- *版本号:v1.0
- *
- *问题描述: 请用类的成员函数定义复数类重载运算符+、-、*、/,使之能用于复数的加减乘除
- *输入描述: 无
- *程序输出: 复数类加减乘除之后的结果
- */
- #include<iostream>
- using namespace std;
- class Complex
- {
- public:
- Complex(){real=0;imag=0;}
- Complex(double r,double i){real=r;imag=i;}
- Complex operator+(const Complex&c2);
- Complex operator-(const Complex&c2);
- Complex operator*(const Complex&c2);
- Complex operator/(const Complex&c2);
- void display();
- private:
- double real;
- double imag;
- };
- Complex Complex::operator+(const Complex&c2)
- {
- return Complex(real+c2.real,imag+c2.imag);
- }
- Complex Complex::operator-(const Complex&c2)
- {
- return Complex(real-c2.real,imag-c2.imag);
- }
- Complex Complex::operator*(const Complex&c2)
- {
- return Complex(real*c2.real,imag*c2.imag);
- }
- Complex Complex::operator/(const Complex&c2)
- {
- return Complex(real/c2.real,imag/c2.imag);
- }
- void Complex:: display()
- {
- cout<<"("<<real<<","<<imag<<")"<<endl;
- }
- int main()
- {
- Complex c1(3,4),c2(5,-10),c3;
- cout<<"c1=";
- c1.display();
- cout<<"c2=";
- c2.display();
- c3=c1+c2;
- cout<<"c1+c2=";
- c3.display();
- c3=c1-c2;
- cout<<"c1-c2=";
- c3.display();
- c3=c1*c2;
- cout<<"c1*c2=";
- c3.display();
- c3=c1/c2;
- cout<<"c1/c2=";
- c3.display();
- return 0;
- }
第十一周——实现类中的运算符重载
最新推荐文章于 2023-07-07 23:27:38 发布