第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

為什么不實例化子類對象?多此一舉?

既然子類公有繼承了父類,那就可以條用父類的成員函數(shù),那為什么在實例化的時候不直接實例化子類對象,例如:Circle *cir=new Circle(3,5,40),而是要實例化成父類對象,反而造成了麻煩

正在回答

2 回答

視頻中已經(jīng)實例化了:

(1)Circle *cir=new Circle(3,5,40);Shape *shape1 = cir;

(2)Shape *shape1 = new Circle(3,5,4.0);

之間的區(qū)別只是子類對象有沒有子類指針指向;題主(1)應(yīng)該是想說子類對象有了子類指針指向的話,就可以利用刪除子類指針來調(diào)用子類析構(gòu)函數(shù)了,所以第二種做法非要再加上virtual虛析構(gòu)函數(shù),就是多此一舉;

其實,在使用的時候,我們用父類指針指向子類對象,什么時候結(jié)束使用該指針,如果使用(1),則要delete cir;可是我們已經(jīng)寫代碼不知道寫到哪里去了,當(dāng)父類指針shape1用完后,就地delete shape1;是比較實在的,不然就要再翻山越嶺去找子類指針;或者萬一我們在父類指針shape1沒有使用完之前,不小心delete cir;那么程序還要調(diào)用shape1,就會出現(xiàn)意想不到的問題;

1 回復(fù) 有任何疑惑可以回復(fù)我~

視頻里不是都實例化了的嗎

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
C++遠(yuǎn)征之多態(tài)篇
  • 參與學(xué)習(xí)       66225    人
  • 解答問題       329    個

本教程將帶領(lǐng)大家體會面向?qū)ο笕筇匦灾械亩鄳B(tài)特性

進(jìn)入課程

為什么不實例化子類對象?多此一舉?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號