作者HigherKuo (我需要好運)
看板EE_DSnP
標題[問題] operators
時間Sun May 11 22:52:39 2008
在寫insert的時候發現不能使用operator > 跟 operator !=
發現原來是adtTest.h檔案裡面只有overload < 跟 ==
請問我可以自己修該adtTest.h去overload > 跟 != 嗎?
謝謝各位!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.137.101.71
1F:推 timrau:分別改用!(< || ==)和!(==)就行了 05/11 22:57
2F:推 ric2k1:如樓上所述. 但如果你想自行 overload 也可以, 只是建議 05/11 22:59
3F:→ HigherKuo:謝謝兩位! 05/11 23:00
4F:→ ric2k1:operator > (const T& t) const { return !(*this < t || 05/11 23:01
5F:→ ric2k1:*this == t); } 05/11 23:01
6F:推 timrau:其實理論上#include <utility>並using std::rel_ops; 05/11 23:09
7F:→ timrau:又寫好<和== 其他的比較也就都可以用了 不過我沒試成功過XD 05/11 23:09
8F:→ timrau:更正 using namespace std::rel_ops; 05/11 23:17
9F:推 bnsblue:其實>只要用<並把原本兩個operand的順序反過來就可以了.. 05/11 23:32