突然想到,順手把他記下來吧。
在C++當中,如果要自己定義++和–這兩個operator,需要不同的Function signature。
1 2 3 4 5 6 7 8
| class Date { //... public: Date& operator++(); //prefix Date& operator--(); //prefix Date& operator++(int unused); //postfix Date& operator--(int unused); //postfix };
|
最大的差別就在於Postfix裡面有個未使用的參數。至於為什麼要這麼設計,可以參考這裡。