C 多型 virtual 函式 指標陣列

2021-10-09 17:42:44 字數 550 閱讀 2416

//忽略其他函式

class

shape

class

rectangle

:public shape

}class

rectangle

:public shape

}class

rectangle

:public shape

}

如果定義

rectangle rect(3

,4);shape *s;

並執行

s-

>

area

()

通過基類指標找到虛函式,會看一下在派生類中有沒有定義。

甚至可以定義乙個指向基類的指標陣列,每個元素指向基類或者派生類物件

shape *s[3]

=for

(int i=

0;i<

3;i++

)

C 不使用virtual實現多型

不使用virtual實現多型可以用成員函式指標完成。成員函式指標形式 返回型別 a 指標名 形參表 其中a是類型別,即這個指標是指向a類的成員函式的函式指標 例如 int a p int,int 這是乙個指向 a類的帶有兩個int型形參且返回值是int的成員函式 的指標,指標名是p。下面是 incl...

C 虛函式 virtual

定義虛函式 為了指明函式為虛函式,在其返回型別前面加上保留字virtual,目的是啟用動態繫結。繼承層次的根類一般都要定義虛析構函式。成員預設為非虛函式,對非虛函式的呼叫在編譯時確定。除建構函式外,任意非static成員函式都可以是虛函式。保留字virtual只在類內部的成員函式宣告 現,不能用在類...

C 虛函式virtual!!!!!!!!!!

1.虛函式出現的作用 重寫父類的方法 2.虛函式的好處 用父類的指標指向子類的例項,呼叫子類的成員函式,這種技術可以讓父類的指標有多種形態,稱之多型。我們都知道,如果子類想用父類的 子類可以選擇繼承父類。如果普通成員函式,我作為父類,只是希望子類你能夠呼叫就好,不要修改它的功能。而父類宣告成virt...