bilibili 聲明一個基類BaseClass,從它派生出類DerivedClass,在BaseClass中聲明虛析構(gòu)函數(shù),在主函數(shù)中?
聲明一個基類BaseClass,從它派生出類DerivedClass,在BaseClass中聲明虛析構(gòu)函數(shù),在主函數(shù)中?首先,你的表達有點偏頗。您想問的是“當(dāng)存在父子繼承關(guān)系時,為什么要將父類的析構(gòu)函
聲明一個基類BaseClass,從它派生出類DerivedClass,在BaseClass中聲明虛析構(gòu)函數(shù),在主函數(shù)中?
首先,你的表達有點偏頗。您想問的是“當(dāng)存在父子繼承關(guān)系時,為什么要將父類的析構(gòu)函數(shù)定義為虛擬函數(shù)?”如果你不明白我為什么要這樣修改你的問題,你可能需要理解類和對象之間的關(guān)系。假設(shè)有父類和子類,父類繼承父類,則可以編寫這樣的代碼:父類*f=new Sondelete f此時,如果父類的析構(gòu)函數(shù)不是虛的,則刪除f時會調(diào)用父類的父類析構(gòu)函數(shù),即父類的析構(gòu)函數(shù),父類的析構(gòu)函數(shù)必須是虛函數(shù)