已采納回答 / onemoo
哦,F(xiàn)lyable這是個(gè)純虛的基類(lèi),這種類(lèi)是不能實(shí)例化的,只能通過(guò)此種類(lèi)型的指針來(lái)訪問(wèn)派生類(lèi)。在調(diào)用函數(shù)時(shí),函數(shù)的參數(shù)會(huì)被構(gòu)造出來(lái),所以參數(shù)也不能直接聲明為這種類(lèi)型,聲明成指針就沒(méi)問(wèn)題。
2015-12-11
已采納回答 / onemoo
從C++語(yǔ)言的角度來(lái)說(shuō),這就是虛函數(shù)的功能,你只需記住即可。如果你深究原因,這和語(yǔ)言的實(shí)現(xiàn)有關(guān),大部分平臺(tái)和編譯器都是借助“虛函數(shù)表”來(lái)實(shí)現(xiàn)的,你搜搜這個(gè)東西就能明白。 不過(guò)你也要知道:C++并沒(méi)有強(qiáng)制要求用虛函數(shù)表來(lái)實(shí)現(xiàn)多態(tài),C++標(biāo)準(zhǔn)只是規(guī)定了行為,并沒(méi)有規(guī)定具體實(shí)現(xiàn)方式。
2015-11-27
已采納回答 / eksea
可以,析構(gòu)函數(shù)定義成虛析構(gòu)函數(shù)沒(méi)啥副作用,建議定義析構(gòu)函數(shù)時(shí)都加上virtual
2015-11-24
已采納回答 / onemoo
這是構(gòu)造函數(shù)的“構(gòu)造初始化列表”??梢园研枰跇?gòu)造時(shí)初始化的成員變量寫(xiě)在這里,括號(hào)中是它們的初值,有多個(gè)變量就用逗號(hào)隔開(kāi)。也可以寫(xiě)上父類(lèi)的構(gòu)造函數(shù),這樣可以在構(gòu)造時(shí)按照你提供的參數(shù)將父類(lèi)構(gòu)造出來(lái)。上面這些會(huì)在本構(gòu)造函數(shù)執(zhí)行前構(gòu)造完成。你這里應(yīng)該就是父類(lèi)的構(gòu)造函數(shù),Plane(code),括號(hào)中code就是調(diào)用參數(shù)。
2015-09-21