弱智问题,弱智问题,弱智问题
#include <iostream>
using namespace std;
class A
{
public:
A(int x){rx=x;}
int operator++(){rx++;return rx;}
int operator++(int){int i=rx;rx++;return i;}
friend ostream& operator<<(ostream &s,const A c)
{
s<<c.rx;
return s;
}
private:
int rx;
};
int main()
{
A a(4),b(5);
cout<<a<<b<<endl;
cout<<++a<<a++<<endl;
system("pause");
return 0;
}
输出:
4 5
6 4
为什么会这样,第一次重载是从左到右,第二次好象是从右往左啊。