虛函數的運用

vc++中運用到虛函數,實現多態時,不同的派生類執行自己的虛函數,運用時應注意:

舉例:

基類:CAnimal,虛函數:virtual call(){......}

派生類1:CDog,虛函數:virtual call(){"狗叫......"}

派生類2:CCat,虛函數:virtual call(){"貓叫......"}

 

1、基類定義的虛函數,在使用時,如果用基類定義變量,如:CAnimal *a,CAnimal *b,那麼在 使用虛函數時,應使用指針,若用一般的成員運算符,是達不到派生類實現的虛函數的效果(CAnimal a;a.call()之類的)。

2、用派生類來定義變量,也可以讓其實現其虛函數的功能,如:CCat cat cat.call()。

發佈了48 篇原創文章 · 獲贊 7 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章