33,311
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
class Amount
{ int amount;
public:
Amount(int n=0):amount(n){}
int getAmount()const{return amount;}
Amount & operator += (Amount &a)
{ amount+=a.amount;
return a;
}
};
int main()
{ Amount x(3),y(7);
x+=y;
cout<<x.getAmount()<<endl;
return 0;
}
#include <iostream>
using namespace std;
class Amount
{ int amount;
public:
Amount(int n=0):amount(n){}
int getAmount() const {return amount;}
void operator += (Amount &a)
{
amount+=a.amount;
}
};
int main()
{ Amount x(3),y(7);
x+=y;
cout<<x.getAmount()<<endl;
return 0;
}
Amount x(3),y(7);
Amount tem = x+=y;
cout<<tem .getAmount()<<endl;
这时候修改了返回值,那么就会存在差别了,明白了吗