[問題] const Reference的問題

看板C_and_CPP (C/C++)作者 (孟)時間16年前 (2010/05/15 00:52), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/2 (看更多)
假設我有一個ClassA和ClassB class ClassA { private: ClassB _b; public: ClassB& GetB(); } class ClassB { private: int _var; public: void SetVar(int var) { _var = var }; } 我想從ClassA取得ClassB的參考 ClassB& b = a.GetB(); 但我不想讓外部改變a的_b 如b=anotherB; 這樣會導致a的_b被修改掉 我是想讓外部只透過b.SetVar來改變b的內部成員 如果我把GetB的回傳值設成const 那會導致b.SetVar不能呼叫 如果不設成const 又會導致a._b有可能被取代掉 請問要如何才能達成我要的要求呢? 還是只能使用指標了嗎? 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.171.66.92

05/15 02:44, , 1F
const member function + mutable
05/15 02:44, 1F
文章代碼(AID): #1BxN-vfi (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1BxN-vfi (C_and_CPP)