C++ 封裝,繼承,多態總結

來源:互聯網
上載者:User

標籤:this   規劃   繼承   一個   指標   nbsp   重要性   不同   c++   

在學習API,MFC時,看到了C++的重要性質。之前瞭解過封裝,繼承,多態,今天看完《深入淺出MFC》一書中的論述,對這三個概念有了更深的認識。為了防止自己忘記,寫下這篇總結。

封裝

  • 物件導向,即“一切皆對象”。
  • 把對象的屬性描述出來,即對象的屬性,“類”。
  • 對象的屬性有兩大成員:屬性(property)和方法(method);也可以稱為成員變數(member variable)和成員函數(member function);
  • 成員變數一般聲明為private,成員函數一般聲明為public。

繼承與This指標

  • 衍生類別繼承基類,“暗自”擁有了基類的成員函數與成員變數(預設Public繼承)
  • 當以“基類的指標”指向“衍生類別的對象”時,經過這個指標,你只能調用由基類(不是衍生類別)定義的函數
  • 不能用“衍生類別的指標”指向一個“基類對象”
  • 當基類和衍生類別都定義了“相同名稱的成員函數”,那麼通過指標調用成員函數時,調用那個函數由指標的原始類型決定

虛函數與多態

  • “基類的指標”要調用“衍生類別的成員函數“,virtual 虛函數 來實現
  • 當所有衍生類別有同一特徵(成員函數),可以通過虛函數,然後“基類指標”可通過迴圈調用所有
    • 比如“基類:動物”,“衍生類別:小狗,小貓,小雞,小鴨”,衍生類別都有特性(函數)“鳴叫”
    • “鳴叫”的操作叫做,“一般化”操作。你可以利用虛函數,規划出一些一般化操作
  • 當你期望給衍生類別添加新的成員函數時,在基類中加入該函數的純虛函數:Virtual void dispaly() = 0;
  • 以單一指令調用不同函數,這種性質叫做“多態”。
  • 擁有純虛函數的類叫做抽象類別,不能產生對象執行個體,但可以有指標,用來操作衍生類別 

 

C++ 封裝,繼承,多態總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.