#include<iostream>
using namespace std;
class complex{
double real,imag;
public:
complex(double r=0,double i=0){
real=r;
imag=i;
}
complex operator+ (complex &c2);
void display();
};
complex complex::operator+(complex &c2)
{
complex c;
c.real=real+c2.real;
c.imag=imag+c2.imag;
return c;
}
void complex::display(){
cout<<real<<"+"<<imag<<"i"<<endl;
}
int main()
{
complex a(1,2),b(2,3),c;
c=a+b;
c.display();
}
using namespace std;
class complex{
double real,imag;
public:
complex(double r=0,double i=0){
real=r;
imag=i;
}
complex operator+ (complex &c2);
void display();
};
complex complex::operator+(complex &c2)
{
complex c;
c.real=real+c2.real;
c.imag=imag+c2.imag;
return c;
}
void complex::display(){
cout<<real<<"+"<<imag<<"i"<<endl;
}
int main()
{
complex a(1,2),b(2,3),c;
c=a+b;
c.display();
}
还有种更简单的方法,重载函数还可以这样写
complex complex::operator+(complex &c2)
{
return complex(real+c2.real,imag+c2.imag);
}