一、多型(只對指標和引用有用)
1、定義:多型是指當基類的指標(或引用)繫結到派生類物件上,通過此指標(或引用)呼叫基類的成員函式時,實際上呼叫到的是該函式在派生類中的覆蓋函式版本。
2、多型的兩種表現形式(其實如果乙個基類中的乙個函式為虛函式的話,若其派生類中有同名的函式,但是沒有標明為虛函式的話,預設為虛函式,至於呼叫哪乙個還是看到底指向**)
(一)表現形式一
通過基類指標呼叫基類和派生類中的同名虛函式時://即基類和派生類中有同名的虛函式。
(1)若該指標指向乙個基類的物件,那麼被呼叫的是基類的虛函式。
(2)若該指標指向乙個派生類的物件,那麼被呼叫的是派生類的虛函式。
這種機制就叫做「多型」。
例如:
#include using namespace std;
class cbase
C 虛函式,純虛函式,虛析構和純虛析構
c 虛函式 定義為虛函式是為了允許用基類的指標來呼叫子類的這個函式,是需要具體實現的 virtual void funtion1 c 純虛函式 一 定義 純虛函式是在基類中宣告的虛函式,它在基類中沒有定義,但要求任何派生類都要定義自己的實現方法。在基類中實現純虛函式的方法是在函式原型後加 0 vir...
虛函式 純虛函式 普通函式 虛析構函式
虛函式 純虛函式 普通函式 虛析構函式 其他 靜態成員函式實現隱藏,當前檔案可見,出了這個檔案就不可見了,所以多個檔案可以定義相同的名字。出了作用域之後不銷毀,程式結束才銷毀。靜態成員函式不屬於物件,它與任何物件都是無關的,因此靜態成員函式沒有this指標。也就是說 非靜態成員函式有this指標,而...
虛函式 純虛函式 虛函式與析構函式
一 虛函式 只有用virtual宣告類的成員函式,使之成為虛函式,不能將類外的普通函式宣告為虛函式。因為虛函式的作用是允許在派生類中對基類的虛函式重新定義。所以虛函式只能用於類的繼承層次結構中。乙個成員函式被宣告為虛函式後,在同一類族中的類就不能再定義乙個非virtual的但與該虛函式具有相同的引數...