課程
/后端開發(fā)
/C++
/C++遠(yuǎn)征之多態(tài)篇
如果說(shuō)抽象類無(wú)法實(shí)例化對(duì)象,那父類是抽象類該怎樣實(shí)現(xiàn)多態(tài)呢?
2017-02-21
源自:C++遠(yuǎn)征之多態(tài)篇 3-1
正在回答
可以的,你父類即使是text*pa=new text,也是不可以的(text是基類),但是你用父類的指針指向一個(gè)實(shí)例化的地址是可以的
抽象類無(wú)法實(shí)例化對(duì)象,僅僅是指不能直接實(shí)例化一個(gè)抽象類對(duì)象;但是使用父類指針指向子類這一行為實(shí)際上是實(shí)例化了一個(gè)子類對(duì)象,而子類對(duì)象并不是抽象類對(duì)象。就比如一個(gè)抽象類CanEat,它有一個(gè)Human這一子類繼承。我們可以使用CanEat *p=new Human這一方式實(shí)例化一個(gè)Human對(duì)象,但不能使用CanEat *p=new CanEat這一方法。
舉報(bào)
本教程將帶領(lǐng)大家體會(huì)面向?qū)ο笕筇匦灾械亩鄳B(tài)特性
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2018-01-23
可以的,你父類即使是text*pa=new text,也是不可以的(text是基類),但是你用父類的指針指向一個(gè)實(shí)例化的地址是可以的
2017-02-21
抽象類無(wú)法實(shí)例化對(duì)象,僅僅是指不能直接實(shí)例化一個(gè)抽象類對(duì)象;但是使用父類指針指向子類這一行為實(shí)際上是實(shí)例化了一個(gè)子類對(duì)象,而子類對(duì)象并不是抽象類對(duì)象。就比如一個(gè)抽象類CanEat,它有一個(gè)Human這一子類繼承。我們可以使用CanEat *p=new Human這一方式實(shí)例化一個(gè)Human對(duì)象,但不能使用CanEat *p=new CanEat這一方法。