日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++:45---多态

發(fā)布時間:2023/12/13 c/c++ 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++:45---多态 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、多態(tài)介紹

  • 面向?qū)ο蟮暮诵乃枷胧嵌鄳B(tài)性,其含義是“多種形式”

  • 概念:在子類覆蓋了父類函數(shù)的情況下,用父類的指針(或引用)調(diào)用子類對象,或者通過父類指針調(diào)用覆蓋函數(shù)的時候(動態(tài)綁定),實際上調(diào)用的是子類的覆蓋版本,這種現(xiàn)象叫做多態(tài)

  • 注意事項:

    • 只有用父類的指針(或引用)調(diào)用子類對象多態(tài)才會產(chǎn)生,非指針/引用不會產(chǎn)生多態(tài)

    • 且只有用父類的指針(或引用)調(diào)用虛函數(shù)才會產(chǎn)生多態(tài),調(diào)用非虛函數(shù)不會產(chǎn)生多態(tài)效果

  • 運行時解析:

    • 當(dāng)我們使用基類的引用或指針調(diào)用基類中定義的一個虛函數(shù)時,我們并不知道該函數(shù)真正作用的對象是什么類型,因為它可能是一個基類的對象也可能是一個派生類的對象

    • 如果該函數(shù)是虛函數(shù),則直到運行時才會決定到底執(zhí)行哪個版本。非虛函數(shù)的調(diào)用在編譯時進(jìn)行綁定的,類似的,通過對象進(jìn)行的函數(shù)(虛函數(shù)或非虛函數(shù))調(diào)用也在編譯時綁定

二、多態(tài)的條件

  • 父子類之間有覆蓋關(guān)系

  • 基類必須通過引用或指針指向子類,然后再調(diào)用虛函數(shù),此時就可以實現(xiàn)多態(tài)

三、演示案例

class A{public://虛函數(shù)virtual void show()const { cout &

總結(jié)

以上是生活随笔為你收集整理的C++:45---多态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。