虛類

含有虛函式的類是虛類,虛函式用關鍵字virtual聲明。

定義

虛函式表明只有在程式使用到該函式時,才獲得與調用對象對應的該函式的實現。

純虛類

含有純虛函式的類是純虛類,更多的是叫抽象類。純虛類可以有成員變數。純虛類不能實例化。

虛函式

虛函式必須是基類的非靜態成員函式,其訪問許可權可以是protected或public,在基類的類定義中定義虛函式的一般形式:

virtual 函式返回值類型 虛函式名(形參表)

{ 函式體 }

虛函式的作用是實現動態聯編,也就是在程式的運行階段動態地選擇合適的成員函式。

純虛函式沒有函式體。

相同和不同處

c++虛類相當與java裡面的抽象類,與接口的不同之處如下:

1、一個子類只能繼承一個抽象類(虛類),但能實現多個接口;

2、一個抽象類可以有構造方法,接口沒有構造方法;

3、一個抽象類中的方法不一定是抽象方法,即其中的方法可以有實現(有方法體),接口中的方法都是抽象方法,不能有方法體,只有聲明;

4、一個抽象類可以是public、private、protected、default, 接口只有public和default;

5、一個抽象類中的方法可以是public、private、protected、default, 接口中的方法只能是public。

相同之處:都不能實例化。

相關詞條

相關搜尋

熱門詞條

聯絡我們