C Primer 筆記15 物件導向程式設計

2021-10-05 23:41:43 字數 964 閱讀 7594

動態繫結:

派生類物件概念模型:

允許將基類指標或引用繫結到派生類物件的基類部分上

派生類的建構函式:

將某個類用作基類,則該類必須已經定義

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類似 值得注...