c 純虛函式和抽象類

2021-10-25 03:50:34 字數 613 閱讀 2750

在c++多型中,父類的作用就是提供乙個虛函式類方便進行多型,那麼實際上父類的用處幾乎等於沒有,所以c++提供了純虛函式和抽象類

純虛函式的語法

virtual 返回值型別 函式名(引數列表)=0;

只要在類中建立出純虛函式,那麼這個類就會變成抽象類,無法例項化物件,也就是無法建立物件,

同時如果他的子類沒有重寫父類的虛函式,那麼子類也會變成抽象類。

抽象類相當於是乙個介面

這裡來看看**

**中提供了實現多型的兩種方式

父類的引用或指標指向子類物件

#include

#include

using

namespace std;

//純虛函式和抽象類

class

base

;class

son:

public base};

void

test01()

//引用方式

void

test02()

//指標方式

intmain()

C 純虛函式和抽象類

本文 在介紹抽象類之前,我們先介紹一下純虛函式。1.純虛函式 在基類中僅僅給出宣告,不對虛函式實現定義,而是在派生類中實現。這個虛函式稱為純虛函式。普通函式如果僅僅給出它的宣告而沒有實現它的函式體,這是編譯不過的。純虛函式沒有函式體。純虛函式需要在宣告之後加個 0 class 基類名 2.抽象類 含...

C 虛函式和純虛函式和抽象類

虛函式是類的一種特殊成員函式,主要是為實現c 的多型特性引入。虛函式之所以 虛 是因為呼叫的虛函式不是在靜態編譯 靜態編聯 時確定,而是在執行時通過動態編聯確定的。多型核心理念即是通過基類訪問派生的子類,通常情況是借助基類指標來訪問派生類物件。note 1 析構函式通常宣告為虛函式,這樣在有繼承場合...

c 抽象類 純虛函式

1 錄入下面程式,分析編譯錯誤資訊。include include include using namespace std class abstract virtual void f 0 int main 分析 這個程式最大的問題就是abstract p new abstract 定義了乙個抽象類的...