作者ric2k1 (Ric)
看板EE_DSnP
標題[討論] 關於 operator overloading 的界線
時間Wed Dec 17 19:15:46 2008
簡單的說, 只要讓使用的時候符合文法就可以了,
所以:
a ++ b;
a+;
是不可能可以的.
但是這個:
a + + b;
卻可能可以... (見參考程式)
換句話說, 只要符合文法, 你要對 overloaded 的 operator 做怎麼樣的定義,
甚至改它的 return type, 都是沒有關係的,
所以像是:
void operator ++() { --_data; }
void operator << (ostream& os) const { os << _data << endl; }
都是 OK 的!! 只是用起來會很怪而已.
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.21.241
1F:→ ric2k1:最後兩個是 member functions 12/17 19:16