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的函式,並在乙個或多個派生類中再定義的函式。實現多型性。虛函式的特點是,只要定義乙個基類的指標,就可以指向派生類...