#include<iostream>
using namespace std;
class Complex{
public:
Complex(){
real = 0;
imag = 0;
}
Complex(double r, double i){
real = r;
imag = i;
}
Complex operator+(Complex& c2);
Complex& operator++();
Complex& operator++(int i);
void display();
private:
double real;
double imag;
};
Complex Complex::operator+(Complex& c2){
Complex c;
c.real = real + c2.real;
c.imag = imag + c2.imag;
return c;
}
//成员函数重载前置++
Complex& Complex::operator++(){
real++;
imag++;
return *this;
}
//成员函数重载后置++
Complex& Complex::operator++(int i){
real++;
imag++;
return *this;
}
void Complex::display(){
cout << "(" << real << "," << imag << "i)" << endl;
}
int main(){
Complex c1(3, 4), c2(5, -10), c3;
c3 = ++c1;
cout << "c3 = "; c3.display();
return 0;
}