課程
/后端開發(fā)
/C++
/C++遠征之封裝篇(下)
銷毀時先執(zhí)行對象成員指針的析構函數(shù),跟之前學習的先執(zhí)行對象的析構函數(shù)再執(zhí)行對象成員的析構函數(shù)過程相矛盾了呀
2016-10-05
源自:C++遠征之封裝篇(下) 4-5
正在回答
不對,你在執(zhí)行delete (Line對象指針)的時候就會執(zhí)~Line,而類Line中的析構函數(shù)~Line中又有delete (Coordinate的對像指針)他就會先調用~Coordinate之后在打印輸出“~Line”,他是cout寫在了delete(Coordinate的對像指針)之后,如果是之前就會先打印,但是銷毀對象的順序還是先執(zhí)行~line
慕粉3821588 提問者
不矛盾,應該先釋放指針,否則對象析構完后,我們無法釋放指針啊,會發(fā)生錯誤
舉報
封裝--面向對象三大特征之一,通過案例讓C++所學知識融會貫通
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2016-10-21
不對,你在執(zhí)行delete (Line對象指針)的時候就會執(zhí)~Line,而類Line中的析構函數(shù)~Line中又有delete (Coordinate的對像指針)他就會先調用~Coordinate之后在打印輸出“~Line”,他是cout寫在了delete(Coordinate的對像指針)之后,如果是之前就會先打印,但是銷毀對象的順序還是先執(zhí)行~line
2016-10-05
不矛盾,應該先釋放指針,否則對象析構完后,我們無法釋放指針啊,會發(fā)生錯誤