看板 EE_DSnP 關於我們 聯絡資訊
某個class裡面有個member function void f() { ... double speed = 0; ... } 這樣work的不錯 但是現在我想要把那個speed改成data member 以便於其他function使用 於是 class A { ... private: double _speed; ... } void f() { ... _speed = 0; } 就這樣,執行到這裡的時候會出現"存取違規錯誤" 所以我又稍稍修改了一下 class A { ... private: double _speed; ... } void f() { ... double speed = 0; ... // _speed = 0; <---這行先不看 } 這樣OK,但沒有達到我想令speed為data member的目的 再想另一種方法 class A { ... private: double _speed; ... } void f() { ... double speed = 0; ... _speed = speed; } 於是又出現同樣的問題了 感覺像是更改到_speed就有麻煩 不過我沒有任何const 的 function啊 這是怎麼回事? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.4.235
wintercobra:順帶一提,我有同樣功能的另一個data member: _rate 01/18 20:12
wintercobra:使用起來就完全沒問題(也是double),令我不解 01/18 20:13
ric2k1:f() 是 member function 嗎? 01/18 20:18
wintercobra:對 01/18 21:11
ric2k1:資訊不足, 無法幫你判斷... 也須開個 debugger trace一下吧 01/18 22:00