多態(tài)可以簡單地概括為“一個(gè)接口,多種方法”,在程序運(yùn)行的過程中才決定調(diào)用的函數(shù)。多態(tài)是面向?qū)ο缶幊填I(lǐng)域的核心概念。
2、 多態(tài)的實(shí)現(xiàn)
多態(tài)往往借助于虛函數(shù)實(shí)現(xiàn),把基類和派生類中相同的函數(shù)同時(shí)定義為虛函數(shù)。在一個(gè)含有基類和派生類的程序中,往往各個(gè)類中相應(yīng)的成員函數(shù)具有相同的函數(shù)名、返回類型和參數(shù)表,但函數(shù)體不同。在每個(gè)類中都有實(shí)現(xiàn)相應(yīng)功能的成員函數(shù)。
當(dāng)一個(gè)派生類的對(duì)象的地址賦給一個(gè)基類的指針后,基類指針只能訪問所屬的成員函數(shù),不能訪問該派生類對(duì)象中與基類成員函數(shù)相同的成員函數(shù)。但在實(shí)際應(yīng)用中,需要把一個(gè)基類或派生類的對(duì)象的地址賦給一個(gè)基類的指針后,基類指針能夠訪問基類或派生類中與基類成員函數(shù)相同的成員函數(shù)。虛函數(shù)的定義方法時(shí)在成員函數(shù)前加關(guān)鍵字virtual。
當(dāng)基類和派生類中相同的函數(shù)定義為一組虛函數(shù)后,通過基類指針可以調(diào)用任一類中的虛函數(shù)。
代碼的輸出結(jié)果如下:想要獲得更多內(nèi)容,可點(diǎn)擊:《Visual C++代碼參考與技巧大全》學(xué)習(xí)筆記——索引隨筆
Copyright @ 煙皚 Powered by: .Text and ASP.NET Theme by: .NET Monster