C 虛函式與繼承的乙個例子

2021-08-06 04:26:04 字數 527 閱讀 8142

通過隱含的this指標,也可以實現執行時多型:

#include 

class a

int getdata()

virtual

int dogetdata()

};class b : public a

int dogetdata()

};class c : public b

};int main()

這裡列印的結果是1,呼叫的是b中的getdata函式;那為什麼輸1呢?多型不應該是在使用指標或引用的時候,才會出現咩? 物件c不是指標呼叫啊, 我認為c呼叫的是 a中的getdata,c和a不是直接繼承,b中有虛函式,我感覺,c中也有指向父類的類指標,通過this指標呼叫函式傳遞的類物件指標,**a可以這樣描述:

class a 

int getdata()

virtual

int dogetdata()

};

C 幾個例子 靜態建構函式,繼承,虛方法

1.靜態建構函式的執行 靜態建構函式用於初始化任何靜態 資料,或用於執行僅需執行一次的特定操作。在建立第乙個例項或引用任何靜態成員之前,將自動呼叫靜態建構函式。using system public classa public classb public class c,y a.x,b.y 2,1靜...

C 幾個例子 靜態建構函式,繼承,虛方法

1.靜態建構函式的執行 靜態建構函式用於初始化任何靜態資料,或用於執行僅需執行一次的特定操作。在建立第乙個例項或引用任何靜態成員之前,將自動呼叫靜態建構函式。using system public classa public classb public class c,y a.x,b.y 2,1靜態...

關於類的繼承的乙個例子

學習物件導向,繼承是乙個不得不說的問題。從c 開始,我們就學習繼承和介面。呵呵,昨天收到一間叫網龍公司的面試email,先發個試題來做的email面試還是第一次見識。可能偶面試經驗少吧 不超過十次 面試題目裡面有乙個問題很適合用來作為繼承的講解例子。因為這個例子實在太美妙了,忍不住做了一下,並試著分...