/*
下面程式有乙個b類,有乙個a函式,呼叫了自身的b函式
思考:如果有一天我的這個b類不錯,別人想用使用,
他拿過去的時候發現b函式並不能滿足他的要求,但是功能就是這個樣子
那麼怎麼解決呢?
為了方便給別人使用,並且不破壞我的b類,
我就把b函式定義成虛函式,別人可以通過繼承來重寫它。
這樣這個問題就解決了。
下面這個show函式就是用的多型概念,在不改變的show函式的情況下,show函式會有多種執行效果
這樣做程式的可維護性大大提高
*/#include "iostream"
#include "stdio.h"
#include "string"
using namespace std;
class b
void a()
int main()
多型之重寫
一 先定義乙個被重寫類jisuan,重點是用關鍵字virtual using system using system.collections.generic using system.linq using system.text using system.threading.tasks namesp...
多型基類與虛析構函式
假設我們有乙個基類a,很不幸的,a的析構函式是乙個non virtual。同時我們有乙個派生類b,它派生自a。我們定義了乙個a型別指標,它指向的實際物件是b a ptr new b 然後在程式的某處,我們不再需要b了,我們將指標ptr delete掉 delete ptr 注意new永遠要和dele...
C 重寫基函式(override)
物件導向程式設計的三大特性是繼承,封裝和多型。當我們從父類中繼承了一種方法,但是我們事實上需要的是另外一種方法,這時候我們就可以通過重寫方法,實現乙個方法名對應多種方法。舉例來說,我們有乙個類名叫animal,其中有乙個方法名為move class animal class bird animal ...