C 繼承 多型 虛函式

2021-09-23 05:45:50 字數 828 閱讀 7361

c++支援多繼承

class parent 

class parent2;

class child : public parent, private parent2

公有繼承和私有繼承的區別

public parent:公有繼承,private和public都會繼承

private parent:私有繼承,只繼承private的

靜態多型和動態多型

class child : public parent

virtual void test2()

}

靜態多型,編譯的時候就會確定型別

parent* child2 = new child();  //靜態多型,編譯的時候就會確定型別,此處會確認為parent型別

child2->test(); //列印的是parent的test()

動態多型 方法名前加 virtual,列印的是child的test();

parent* child3 = new child(); //動態多型 方法名前加 virtual

child3->test2(); //列印的是child的test();

純虛函式

子類必須要實現這個函式

class parent
使用虛函式動態多型

具體看 #(靜態多型和動態多型)

構造方法 永遠不要設為虛函式

析構函式 一般宣告為虛函式

C 繼承 多型 虛函式 抽象

一 繼承 1 如果你以乙個 基類指標 指向 派生類物件 那麼經由該指標你只能呼叫基類所定義的函式 2 如果你以乙個 派生類指標 指向乙個 基類指標 你必須先做明顯的轉型操作。3 如果基類和派生類都定義了相同名稱的成員函式,那麼通過物件指標呼叫成員函式是,到底呼叫到那乙個函式,必須視該指標的原始型別而...

C 虛函式和多型繼承

指標和引用是很好理解的,變數的引用相當於給變數取了個別名,在函式呼叫時,傳引用是會將引數列表的值改變的。include using namespace std int main 最終輸出的結果都是0x7ffdd9aff7b4,即為記憶體中儲存整型變數m的位址。對於虛函式,它是實現多型公有繼承的關鍵。...

C 繼承與多型之虛函式

一 定義 虛函式必須是基類的非靜態成員函式,其訪問許可權可以是private或protected或public,在基類的類定義中定義虛函式的一般形式。虛函式是一種在基類定義為virtual的函式,並在乙個或多個派生類中再定義的函式。實現多型性。虛函式的特點是,只要定義乙個基類的指標,就可以指向派生類...