重載自家運算符的執行次序

#include<iostream>
#include<string>
using namespace std;
class A
{
public:
	A(int x){rx=x;}
	int operator++(){cout<<"++i  先++再返回++後的值\n";rx++;return rx;}
	int operator++(int){cout<<"i++  先取值再++,返回先取的值\n";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);
	cout<<++a<<a++<<endl;
	return 0;
}

發佈了22 篇原創文章 · 獲贊 14 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章