推 LPH66:GetID() 加個 const 宣告如何? (ie. int& GetID() const;) 09/07 13:51
推 QQ29:L大 一般不是你 加上const 回傳的地方也該加上 const int &嘛 09/07 14:01
推 QQ29:還是只是為了滿足他這case 希望還可以使用==設值@@ 09/07 14:03
→ tyc5116:Q大,我不懂的地方就在於為何回傳值一定要const int& 09/07 15:06
→ tyc5116:因為我在另一個專案測試的時候是不用的,所以我想問一下 09/07 15:06
→ tyc5116:目前這樣compile不過的原因是?? 09/07 15:07
推 QQ29:如果你只寫 int &GetID() const; 你可以在外部(main)寫 09/07 15:20
→ QQ29:xxx.GetID()=值 這就失去了你原本寫 const的意義 09/07 15:20
→ QQ29:可以看 effective c++ 條款3 他還有分兩派說法 但是我不太懂 09/07 15:22
→ QQ29:他表達的用意 09/07 15:22
推 sponge0121:vTP是reference to constant object 09/07 16:45
→ sponge0121:只允許const member function call 所以如一樓L大所說 09/07 16:46
→ sponge0121:將GetID()宣告成const 應該就OK了 09/07 16:47