1.談?wù)勌摵瘮?shù)的作用
虛函數(shù)的作用,就是讓父類指針可以操作子類空間中子類重寫父類的虛函數(shù)
2.虛函數(shù)的注意事項(xiàng)
子類重寫父類的虛函數(shù)注意:有繼承、子類重寫父類虛函數(shù)(函數(shù)名、返回值類型、參數(shù)類型個(gè)數(shù)順序必須完全一致)。
3.虛函數(shù)實(shí)現(xiàn)的原理
當(dāng)父類中有虛函數(shù),該虛函數(shù)會(huì)生成虛函數(shù)指針(vfptr) 指向虛函數(shù)表(vftable),如果沒涉及到繼承,那么該虛函數(shù)表紀(jì)錄的是父類的虛函數(shù)地址。
一旦該類涉及到繼承,子類就會(huì)繼承父類的虛函數(shù)指針和虛函數(shù)表,子類如果重寫父類的虛函數(shù),就會(huì)將子類重寫的虛函數(shù)入口地址更新在虛函數(shù)表中。
這時(shí)父類指針操作虛函數(shù),通過虛函數(shù)指針定位虛函數(shù)表,而表中紀(jì)錄的是子類重寫的虛函數(shù)地址,所以父類指針間接調(diào)用的是子類重寫的虛函數(shù)。
4.談?wù)剬?duì)純虛函數(shù)的理解
虛函數(shù)不實(shí)現(xiàn)函數(shù)體,就是純虛函數(shù),如果一個(gè)類有純虛函數(shù),那么這個(gè)類就是抽象類。
抽象類不能實(shí)例化對(duì)象,抽象類只能派生子類,而且在子類中必須重寫所有的純虛函數(shù)。
更多關(guān)于物聯(lián)網(wǎng)培訓(xùn)的問題,歡迎咨詢千鋒教育在線名師。千鋒教育擁有多年IT培訓(xùn)服務(wù)經(jīng)驗(yàn),采用全程面授高品質(zhì)、高體驗(yàn)培養(yǎng)模式,擁有國(guó)內(nèi)一體化教學(xué)管理及學(xué)員服務(wù),助力更多學(xué)員實(shí)現(xiàn)高薪夢(mèng)想。