什麼是多型性?

2021-05-22 00:14:23 字數 528 閱讀 3000

多型性分:過載(overload,過載只是函式名相同,返回型別,引數不同,早期匹配)

虛函式(函式必須有完全相同的返回型別和參數列,晚期匹配 )

虛函式:一般虛函式(基類有函式體有實現,子類可重寫也可不重寫)

純虛函式(基類只有函式體沒有實現 virtual fun()=0,子類必須實現此函式體,至少含有乙個純虛函式的類是抽象類)

虛函式的好處:單介面,多實現。

使指向基類物件的指標指向不同派生類的物件,就能訪問虛函式的不能實現版本 例:

class base

public:

virtual show()

class derived:public base

public:

show()

main()

base* p;

derived d;

p=&d;

p->show();

結果:derived

如果去掉虛函式標識(virtual)結果:base

C 多型性 什麼是多型

下面舉乙個生活的例子來理解多型。如果要求3種人 孩子,運動員,演奏者都執行乙個動作 play 會發生什麼情況呢?孩子會出去玩耍。運動員會比賽。演員開始演奏。對於同乙個命令,不同的人會有不同的反應,執行不同的動作,這就是生活中乙個多型。在程式設計中,對於同乙個方法,由於執行的物件不同,方法的內容也就不...

C 多型性 什麼是多型

下面舉乙個生活的例子來理解多型。如果要求3種人 孩子,運動員,演奏者都執行乙個動作 play 會發生什麼情況呢?孩子會出去玩耍。運動員會比賽。演員開始演奏。對於同乙個命令,不同的人會有不同的反應,執行不同的動作,這就是生活中乙個多型。在程式設計中,對於同乙個方法,由於執行的物件不同,方法的內容也就不...

什麼是類的多型性

理解c 多型性之前首先理解一下什麼叫多型。同一操作作用於不同的物件,可以有不同的解釋,產生不同的執行結果,這就是多型性。c 多型性通過派生類覆寫基類中的虛函式型方法來實現。c 多型性分為兩種,一種是編譯時的多型性,一種是執行時的多型性。編譯時的多型性 編譯時的多型性是通過過載來實現的。對於非虛的成員...