動態繫結:
派生類物件概念模型:
允許將基類指標或引用繫結到派生類物件的基類部分上
派生類的建構函式:
將某個類用作基類,則該類必須已經定義
final關鍵字阻止繼承:
靜態型別:編譯時已知的型別
動態型別:表示記憶體中的物件型別,執行時才知道型別
當基類的建構函式傳遞乙個派生類物件時,建構函式只處理基類自己的成員
當使用指標或引用呼叫虛函式時執行動態繫結(執行時解析),否則都在編譯時進行解析
虛函式不能為建構函式或者靜態函式
override關鍵字:顯示註明使用哪個成員函式改寫基類的虛函式
只有虛函式能夠新增override說明符
final不允許基類函式進行覆蓋:
含有純虛函式的類是抽象類,負責定義介面
抽象類不能建立物件
友元關係不能被繼承
如果pal是基類的友元,它可以訪問基類物件內嵌在其派生類物件中的部分
編譯時的名字查詢:
派生類通過基類的作用域查詢被覆蓋的基類成員:
基類通常定義虛析構函式
先執行基類的建構函式,後執行派生類的建構函式
繼承基類的建構函式:
先執行派生類的析構函式,後執行基類的析構函式
c primer 物件導向程式設計筆記
1 動態繫結 在c 中,通過基類的引用 或指標 呼叫虛函式時,發生動態繫結。引用 或指標 既可以指向基類物件也可以指向派生類物件。2 虛函式 1 保留字virtual 只在類內部的成員函式宣告中出現,不能用在類定義體外部初相的函式定義上。2 派生類中虛函式的宣告必須與基類中的定義完全匹配,但有乙個例...
C Primer第15章 物件導向程式設計
物件導向程式設計基於三個基本概念 資料抽象 繼承和動態繫結。物件導向程式設計的核心思想 通過繼承關係聯絡在一起的類構成一種層次關係。通常在層次關係的根部有乙個基類,其它類則直接或間接從基類繼承而來,這些繼承的類稱為派生類。基類負責定義在層次關係中所有類共同擁有的成員,而每個派生類定義各自特有的成員。...
C Primer 物件導向程式設計
1.要注意區分類和類物件,物件只能訪問public成員,而類和友元可以訪問private成員。而對於基類的protected成員,派生類可以訪問其基類的protected成員 友元中也可以訪問protected成員 不能通過派生類物件在類外訪問protected成員 這點與private類似 值得注...