要了解純虛函式,先要知道虛函式是什麼:
純虛函式就是沒有函式體的虛函式,通常都以下列格式定義純虛函式:
class 《類名》
在虛函式後面加"=0",這並不代表虛函式返回值為0,這只是純虛函式的表示形式。純虛函式是一種特殊的虛函式。
我們說,如果乙個類中含有純虛函式(乙個及以上),則這個類就是乙個抽象類。c++的抽象類判定條件就是看這個類是否含有純虛函式。
對於含有純虛函式的類,也就是我們說的抽象類,是不能例項化的。同時,也沒有必要例項化抽象類。因為抽象類的誕生就是作為基類來使用的,為其派生類做貢獻。這樣,我們就可以用抽象類(基類)指標呼叫子類函式了。
介面
c++中的介面的定義也和純虛函式有關。介面是一種特殊的類,比抽象類還要特殊:
如果乙個類裡包含純虛函式,那麼這個類就是抽象類;
如果乙個類中只包含純虛函式,那麼這個類就是乙個介面;
所以,介面也是一種特殊的抽象類。
c 抽象類 純虛函式
1 錄入下面程式,分析編譯錯誤資訊。include include include using namespace std class abstract virtual void f 0 int main 分析 這個程式最大的問題就是abstract p new abstract 定義了乙個抽象類的...
抽象類 純虛函式
在程式中,有些時候我們的基類是不需要例項化的,比如有乙個基類哺乳動物,這個在程式實現的時候沒有必要把他例項化出來。而只是乙個種群的抽象描述,也 無法進行例項化。所以在c 我們可以建立一種叫做抽象資料型別的類。這個類 只是用來繼承的,單獨沒有例項化,沒有意義。其實這也是減少了程式設計師編寫 後除錯的除...
虛函式,純虛函式,抽象類
1 虛函式 include includeusing namespace std class animal 執行結果 2 純虛函式 抽象類 include includeusing namespace std class animal class mouse public animal void c...