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