抽象類 純虛函式

2022-08-20 16:48:11 字數 461 閱讀 7600

在程式中,有些時候我們的基類是不需要例項化的,比如有乙個基類哺乳動物,

這個在程式實現的時候沒有必要把他例項化出來。而只是乙個種群的抽象描述,也

無法進行例項化。所以在c++ 我們可以建立一種叫做抽象資料型別的類。這個類

只是用來繼承的,單獨沒有例項化,沒有意義。其實這也是減少了程式設計師編寫**

後除錯的除錯難度。在編譯器中如果使用者對抽象類進行例項化,那麼編譯器就會報

錯。c++中通過提供純虛函式來支援抽象類,就是說,只要類中包含至少乙個純虛

函式那麼這個類就是抽象類。

純虛函式的定義方法就是把虛函式初始化為0:

virtual void getage() const {} = 0;

這樣派生類在繼承這個抽象類的時候如果不覆蓋這個方法那麼這個派生類也是抽象類,

只有把從抽象類中繼承下來的所有純虛函式覆蓋掉,我們才真正建立了乙個可以例項

化的類。

虛函式,純虛函式,抽象類

1 虛函式 include includeusing namespace std class animal 執行結果 2 純虛函式 抽象類 include includeusing namespace std class animal class mouse public animal void c...

抽象類 純虛函式 虛函式

抽象類是一種特殊的類,它是為了抽象和設計的目的為建立的,它處於繼承層次結構的較上層。1 抽象類的定義 稱帶有純虛函式的類為抽象類。2 抽象類的作用 抽象類的主要作用是將有關的操作作為結果介面組織在乙個繼承層次結構中,由它來為派生類提供乙個公共的根,也就是說抽象類是為派生類服務的。純虛函式作為基類中的...

虛基類 純虛函式 抽象類

虛基類 純虛函式和抽象類 1 虛基類 在 多繼承 中講過的例子中,由類a,類b1和類b2以及類c組成了類繼承的層次結構。在該結構中,類c的物件將包含兩個類a的子物件。由於類a是派生類c兩條繼承路徑上的乙個公共基類,那麼這個公共基類將在派生類的物件中產生多個基類子物件。如果要想使這個公共基類在派生類中...