繼承接口類的子類使用多態(tài)時(shí),沒(méi)有繼承父類的虛析構(gòu)函數(shù),如何保證最后會(huì)執(zhí)行子類的析構(gòu)函數(shù)?
繼承接口類的子類使用多態(tài)時(shí),沒(méi)有繼承父類的虛析構(gòu)函數(shù),如何保證最后會(huì)執(zhí)行子類的析構(gòu)函數(shù)?
比如:
Fu *fu = new Zi();????//Fu類是個(gè)借口類,指向子類對(duì)象。
delete fu;?????//Fu類中沒(méi)有純析構(gòu)函數(shù),這樣的話是怎么執(zhí)行的?子類的析構(gòu)函數(shù)會(huì)執(zhí)行嗎?
fu = NULL;
2016-04-09
子類的析構(gòu)函數(shù)將不會(huì)執(zhí)行
2016-03-17
//Fu類中沒(méi)有純析構(gòu)函數(shù),這樣的話是怎么執(zhí)行的?子類的析構(gòu)函數(shù)會(huì)執(zhí)行嗎?
Fu類中沒(méi)有虛析構(gòu)函數(shù),delete Fu執(zhí)行父類的析構(gòu)函數(shù),此時(shí)子類析構(gòu)函數(shù)只能通過(guò)delete (子類指針)來(lái)執(zhí)行。
Fu類中有虛析構(gòu)函數(shù),delete Fu先執(zhí)行子類的析構(gòu)函數(shù)再執(zhí)行父類的析構(gòu)函數(shù)。
2016-03-11
沒(méi)辦法,虛函數(shù)列表里邊沒(méi)有析構(gòu)函數(shù),只會(huì)執(zhí)行父類的虛構(gòu)函數(shù)而不會(huì)執(zhí)行子類的虛構(gòu)函數(shù),除非定義的是子類的指針指向子類的對(duì)象。