1. gzyueqian
      13352868059

      C++培訓學校講解關于C++多態的基礎知識教你怎么打好基礎

      更新時間: 2018-10-11 14:38:44來源: C++培訓瀏覽量:5796

          一、C++編程多態性有兩種表現形式:
          1)編譯時多態性:同一對象在收到相同的消息卻產生不同的函數調用,一般通過函數重載來實現,在編譯時就實現了綁定,屬于靜態綁定。
          2)運行時多態性:不同對象在收到相同消息時產生不同的動作,一般通過虛函數來實現。
          二、多態和非多態的實質區別

          函數地址為動態綁定還是靜態綁定。

          三、多態的作用
          1)對于封裝,可以使代碼模塊化。
          2)對于繼承,可以擴展已經存在的代碼。
          3)而多態,是為了接口重用。
          四、多態常見的用法
          常見的用法就是聲明基類的指針,利用該指針指向任意一個子類對象,調用相應的虛函數,可以根據指向的子類的不同而實現不同的方法。如果沒有使用虛函數的話,即沒有利用C++多態性,則利用基類指針調用相應的函數的時候,將總被限制在基類函數本身,而無法調用到子類中被重寫過的函數。因為沒有多態性,函數調用的地址將是一定的,而固定的地址將始終調用到同一個函數,這就無法實現一個接口,多種方法的目的了。
          五、擴展了解隱藏規則
          本來僅僅區別重載與覆蓋并不算困難,但是C++的隱藏規則使問題復雜性陡然增加。
          這里“隱藏”是指派生類的函數屏蔽了與其同名的基類函數,規則如下:
          1)如果派生類的函數與基類的函數同名,但是參數不同。此時,不論有無virtual關鍵字,基類的函數將被隱藏。(注意別和重載混淆)

          2)如果派生類的函數與基類的函數相同,但是基類沒有virtual關鍵字,那么基類的函數將被隱藏。(注意別和覆蓋混淆)。

          想要了解更多C++應用技術的可以加入我們噢!

      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚洲国产欧美日韩v一区二区 | 亚洲综合另类一区二区 | 亚洲一区二区三区丝袜 | 午夜色福利视频 | 正在播放酒店精品少妇约 | 亚洲香蕉午夜国产理论电影 |