請問C++的運算子重載

看板Programming作者時間18年前 (2006/12/05 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
小弟對於運算子重載有些問題想請教大家 Class Alpha { int a; int b[3]; public: Alpha(int x){a = x;} Alpha& operator++(); // 前置 Alpha operator++(int); //後置 Alpha& operator+=(const Alpha& v); Alpha& operaot[](int); }; 請問前置operaot++ 和operator+=, 我有看過有人使用 Alpha operator++(); Alpha operator+=(); 1.也就是他們不是return by reference,請問這兩種寫法 那一個比較好呀!雖然兩個執行起來好像都是對的. 2.另外一個問題就是,使用return by reference的時機是怎樣? 3.最後operator[],為什麼一定要return by reference,能不能 解釋一下. -- 夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子 之器不得已而用之恬淡為上勝而不美而美之者是樂殺人夫樂殺人者則不可得志於天下 矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以 喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫 之令而自均始制有名名亦既有夫亦將知止知止可以不殆 alumni.csie.nctu.edu.tw
文章代碼(AID): #15T69a00 (Programming)
文章代碼(AID): #15T69a00 (Programming)