12 7 4 純虛函式和抽象類

2021-10-08 01:55:00 字數 570 閱讀 5306

在多型中,通常父類中虛函式的實現是毫無意義的,主要都是呼叫子類重寫的內容因此可以將虛函式改為純虛函式。

純虛函式語法:virtual [返回值型別] [函式名](引數列表) = 0;

當類中有了純虛函式,這個類也稱為抽象類。

抽象類特點:

示例:首先建立乙個抽象類,並且子類沒有重寫純虛函式。

class

base

;class

son:

public base

;

這時我們發現父類和子類都不能例項化物件,因為他們都是抽象類。

子類重寫純虛函式後就能正常建立物件了。

class

son:

public base

};

**沒有報錯。

純虛函式和抽象類

純虛函式和抽象類 語法格式 virtual 返回值型別 函式名 引數 0 1 純虛函式沒有函式體,之有 宣告 0.只表示是純虛函式,2 0 不表示返回值是0,只是乙個形式,告訴編譯器這是純虛函式 3 包含純虛函式的類稱為抽象類 4 抽象類通常稱為基類,讓派生類去實現純虛函式。派生類必須實現純虛函式才...

純虛函式和抽象類

一.純虛函式和抽象類的概念 用 顯示 class figure 抽象類 注意一下幾點 figure c1 錯誤,抽象類不能建立物件 figure p null 正確,抽象類可以宣告自己的指標 figure fun 錯誤,抽象類不能作為返回型別 void fun figure 錯誤,抽象類不能作為引數...

純虛函式和抽象類

虛函式的定義就不囉嗦了,純虛函式和虛函式類似,但是不提供實現!啥意思呢?見下面的例子 這個方法就是純虛函式,別丟了後邊那個 0,它是用來留給子類去實現的。這下大家或許會疑惑,那麼包含了這個函式的類怎麼建立物件呢?事實上這個類是建立不了例項的,因為包含了乙個及以上個純虛函式的類被稱為抽象類。抽象類是不...