[問題] 虛擬函式的來由

看板Programming作者 ( //StrategyBass)時間14年前 (2011/01/19 18:59), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ [本文轉錄自 C_and_CPP 看板 #1DDhmd8y ] 作者: ikari512 ( //StrategyBass) 看板: C_and_CPP 標題: [問題] 虛擬函式的來由 時間: Wed Jan 19 18:25:40 2011 開發平台(Platform): (Ex: VC++, GCC, Linux, ...) 這是C++的問題,目前應該跟平台無關 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 為什麼「如果你以一個基礎類別之指標指向一個衍生類別之物件,那麼透過該指標你就只 能夠呼叫基礎類別所定義之成員函式」? 書說,這就是我們需要虛擬的原因。 也就是說,我不了解,為什麼只能呼叫base class的member function, 而不能因為指標已經指到derived class的object,而去呼叫 該class中的member function? 餵入的資料(Input):預期的正確結果(Expected Output):錯誤結果(Wrong Output):程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.88.200 ※ 編輯: ikari512 來自: 220.128.88.200 (01/19 18:26)

01/19 18:47,
效能考量唄 虛擬函數呼叫成本比較高 而不是每個成員函數
01/19 18:47

01/19 18:47,
都需要這種特性
01/19 18:47
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.88.200
文章代碼(AID): #1DDiGFr_ (Programming)
文章代碼(AID): #1DDiGFr_ (Programming)