#include <iostream>
using namespace std;
/*
* 重载运算符的一般格式:
* 函数类型 operator 运算符(形参表){
* 函数体
* }
*/
class Complex{
public:
Complex(double r=0,double v=0):real(r),vi(v){};
Complex operator + (Complex &c);
void display();
private:
double real,vi;
};
Complex Complex::operator+(Complex &c) {//重载运算符+
return Complex(real+c.real,vi+c.vi);
}
void Complex::display() {
if(vi>0)
cout << real << "+" << vi << "i" << endl;
else
cout << real << vi << "i" << endl;
}
int main(){
Complex c1(3,4),c2(5,-10),c;
c = c1+c2;
c.display();
return 0;
}
运行结果: