全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:979
推到 Plurk!
推到 Facebook!

繼承再繼承

答題得分者是:change.jian
GDMichael
一般會員


發表:27
回覆:36
積分:12
註冊:2004-10-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-15 09:45:32 IP:203.185.xxx.xxx 未訂閱
如果有這樣的例子: Type TGFather = class procedure eat(); virtual; Type TFather = class(TGFather) procedure eat(); override; <---??? Type TSon = class(TFather) procedure eat(); override; <--??? 我想問再這種情況declare的eat,TFather, TSon是否也寫override,或是TFather 寫上Virtual呢? 而且在這種情況下: Procedure TSon.eat(); begin inherited; <--是否一個inherited也可以了... end;
change.jian
版主


發表:29
回覆:620
積分:439
註冊:2003-06-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-15 10:21:46 IP:61.218.xxx.xxx 未訂閱
hi,GDMichael: 1.會定義成virtual的procedure,只有第一代的物件,後面繼承的物件就一律要宣告為override; 2.後代元件在實作procedure時,只需呼叫一次inherited;inherited的意義,是指執行被繼承的物件的程式.如果該物件中,也有inherited,那麼就是再執行上一代被繼承的物件的procedure. 這樣你了嗎?
GDMichael
一般會員


發表:27
回覆:36
積分:12
註冊:2004-10-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-15 10:33:09 IP:203.185.xxx.xxx 未訂閱
明白了解,多謝指教
系統時間:2024-05-17 11:34:58
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!