亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么去掉基類的eat(),move()子類有 ,怎么不能直接調用子類的move()eat()??

為什么去掉基類的eat(),move()子類有 ,怎么不能直接調用子類的move()eat()??

正在回答

3 回答

類實例化過程中,使用父類指針指向子類對象時,指向的是繼承的成員函數,子類對象特有的部分,父類對象無法實現訪問。所以,這里是父類指針,當然不能直接調用子類的特有成員函數,因為父類中根本就沒有。確定兩者之間的從屬關系后,再看這問題就容易多了。

0 回復 有任何疑惑可以回復我~

父類指針只能訪問子類中的函數,且必須是這函數父類中有。

0 回復 有任何疑惑可以回復我~

因為你聲明的是一個父類的指針,實例化為一個子類對象,子類的行為繼承了父類,你去找一個父類并沒有的行為特征,當然會找不到。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之多態篇
  • 參與學習       66224    人
  • 解答問題       334    個

本教程將帶領大家體會面向對象三大特性中的多態特性

進入課程

為什么去掉基類的eat(),move()子類有 ,怎么不能直接調用子類的move()eat()??

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號