看板 C_and_CPP 關於我們 聯絡資訊
class Student { public: void Read(){} }; const Student *pStu1 = new Student; Student const *pStu2 = new Student; pStu1->Read();// error pStu2->Read();// error 以上是程式碼 小弟目前知道pStu1與pStu2的宣告其實是一樣 但不了解為何一樣 其二 為什麼無法呼叫其成員函式Read()? 錯誤訊息: 無法將 'this' 指標從 'const Student' 轉換成 'Student &' 煩請各位板友提點一下~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.97.176 ※ 編輯: NIKE74731 來自: 112.104.97.176 (11/02 22:40)
stupid0319:為什麼Student類別要用int指標去指呢? 11/02 22:51
※ 編輯: NIKE74731 來自: 112.104.97.176 (11/02 22:55)
NIKE74731:打錯了.... 不好意思 11/02 22:55
Bencrie:沒有 member ? 11/02 22:57
stupid0319:((Student*)pStu1)->Read(); 這樣行不行?? 11/02 22:58
layan:Read() const <= 加const變const member function就可以了 11/02 22:59
layan:const的物件或指標只能呼叫是const的 member function. 11/02 22:59
NIKE74731:喔~~謝謝layan大! 11/02 23:01