后置递增无法链式编程
class integer
{
friend ostream& operator<<(ostream &cout, integer p);
public:
integer& operator++()
{
m_num++;
return *this;
}
integer operator++(int)
//为了区分前++和后++:前++用 函数 ++(void) , 后++用函数++(int),这是固定语法
{
integer temp = *this;
m_num++;
return temp;
}
private:
int m_num = 0;
};
ostream& operator<<(ostream &cout, integer p)
{
cout << p.m_num;
return cout;
}
void test13()
{
integer p1;
cout << ((p1++)++)++ << endl;
cout << p1 << endl;
}
后置递增仍然不能加到3,只能加到1
实现链式编程,一直加