最贊回答 / qq_玲_3
Father *p_children = new Children(xxx)? 是用父類指針指向子類對象,不是“使用父類對象實(shí)例化子類”。 eg:處理函數(shù)? Action(Animal *p);定義對象是用子類? Pig pig????????Horse horse...開始活動??? Action(&pig)???? Action(&horse)...???? 這時只需傳子類地址到Action函數(shù),不必寫區(qū)別處理Pig, Horse...的函數(shù)了。? 大概思想如此,建議看看多態(tài)方面的內(nèi)容...
2016-01-09
已采納回答 / 張土土
首先flymatch函數(shù)不僅可以傳入指針,還可以傳入實(shí)例化對象。1、課程中為什么要傳入flyable指針呢,是基于基類的引用和指針可以引用子類的對象這一原則,也就是說flyable *p? 這個指針既可以引用bird也可以引用plan,這樣做的好處后面會說到。2、那為什么不用flyable p 呢,是因?yàn)閒lyable是純虛函數(shù),flyable p就是實(shí)例化一個flyable的對象p。顯而易見,純虛函數(shù)是不能被實(shí)例化的,所以flyable p 是非法的。3、那可以傳入什么樣的實(shí)例化對象呢,bird和pla...
2016-01-08
已采納回答 / charlie111
不行的,這是C++ 對 ABSTRACT FUNCTION 的標(biāo)志。 就像在JAVA 的 CLASS里 要用?abstract void eat(); 來聲明虛函數(shù)。
2015-12-31
最新回答 / 張土土
女朋友給小c打電話說買個插排回去,小c屁顛屁顛的買了一個只有兩孔的插排回去交差,結(jié)果小c到家就被打了,女朋友說我電腦電源線是三孔的,這個兩孔插排你讓我怎么充電,你是不是不想讓我看羋月傳了?小c滿含淚水的又去買了一個只有三孔的,想著回家會被夸獎一下,結(jié)果到家又被打了,女友說你是不是傻啊, 我看羋月傳的時候還要手機(jī)搶紅包,你告訴我這個三孔的插排怎么插手機(jī)充電器?女友哭著鬧著眼看要跳樓,小c苦苦哀求終于讓女朋友給了他最后一次機(jī)會,他買了一個既有兩個孔又有三個孔的插排回去,這下好了,既可以看羋月傳了又可以搶紅包了...
2015-12-31
已采納回答 / 太陽雨下
不一定,如果是private權(quán)限的,就不會,其它情況會,這樣就算不是虛函數(shù)也是一樣的。子類繼承父類,在創(chuàng)建類的時候就會有一個虛函數(shù)表的概念,如果子類沒重寫同名函數(shù),子類的虛函數(shù)表關(guān)于該函數(shù)的入口地址就會指向父類的該函數(shù)的代碼入口地址
2015-12-28
已采納回答 / 太陽雨下
先說個函數(shù)指針的概念,每個類(除了空類,就是沒有方法也沒有屬性的類)在創(chuàng)建的時候,就會生成一個虛函數(shù)表指針,這個指針與普通的指針一樣,存的是函數(shù)的入口地址,這是在類生成的時候就建立的。下來說幾種情況:父類實(shí)現(xiàn)了非virtual修飾的方法一,子類繼承父類,子類沒有再實(shí)現(xiàn)方法一,這樣父類與子類的關(guān)于方法一在各自虛函數(shù)表中的地址是一樣的,也就是子類可以直接用父類的方法,而不用再去實(shí)現(xiàn);父類實(shí)現(xiàn)了非virtual修飾的方法一,子類繼承父類,子類重寫了方法一,這樣子類的虛函數(shù)表的方法一的地址與父類的虛函數(shù)表的方法一...
2015-12-28
已采納回答 / onemoo
哦,F(xiàn)lyable這是個純虛的基類,這種類是不能實(shí)例化的,只能通過此種類型的指針來訪問派生類。在調(diào)用函數(shù)時,函數(shù)的參數(shù)會被構(gòu)造出來,所以參數(shù)也不能直接聲明為這種類型,聲明成指針就沒問題。
2015-12-11