#include
#include
using namespace std;
class complex{
private:
int real;
int imag;
public:
complex(int r=0,int i=0) :real(i),imag(i){}
~complex(){}
complex operator +(complex&x)
{
real=real+x.real;
imag=imag+x.real;
return *this;
}
complex operator -(complex&x)
{
real=real-x.real;
imag=imag-x.imag;
return *this;
}
complex operator ++() //前置自增不允许有参数,作为类成员
{
real++;
return *this;
}
complex operator ++(int)
{
imag++;
return *this;
}
complex operator =(complex&x)
{
real=x.real;
imag=x.imag;
return *this;
}
void output()
{
cout<<real<<" "<<imag<<endl;
}
friend istream operator >>(istream&in,complex&x);
};
istream operator >>(istream&in,complex&x)
{
in>>x.real>>x.imag;
return in;
}
int main()
{
complex c(1,1);
complex d(10,10);
complex e;
e=c+d;
e.output();
e=c-d;
e.output();
c++;
c.output();
++c;
c.output();
return 0;
}
**这段代码,报错说重载的函数 return in是尝试引用被删除的函数、这什么鬼?=-=菜鸟一枚,求解答**