c 的多型性

2021-09-11 23:54:58 字數 419 閱讀 6189

oop的核心思想是多型性(polymorphism)。多型性這個詞源自希臘語,其含義是「多種形式」。我們把具有繼承關係的多個型別稱為多型型別,因為我們能使用這些型別的「多種形式」而無須在意他們的差異。引用或指標的靜態型別與動態型別不同這一事實正是c++語言支援多型性的根本所在。

當我們使用基類的引用或指標呼叫基類中定義的乙個函式時,我們並不知道該函式真正作用的物件是什麼型別,因為它可能是乙個基類的物件也可能是乙個派生類的物件。如果該函式是虛函式,則直到執行時才會決定到底執行哪個版本,判斷的依據是引用或指標所繫結的物件的真實型別。

另一方面,對非虛函式的呼叫在編譯時進行繫結。類似的,通過物件進行的函式(虛函式和非虛函式)呼叫也在編譯時繫結。物件的型別是確定不變的,我們無論如何都不可能令物件的動態型別和靜態型別不一致。因此,通過物件進行的函式呼叫將在編譯時繫結到該物件所屬類中的函式版本上。

C 的多型性

c 的多型性 1.多型性的概念 多型性是指用乙個名字定義不同的函式,這函式執行不同但又類似的操作,從而實現 乙個介面,多種方法 多型性的實現與靜態聯編 動態聯編有關。靜態聯編支援的多型性稱為編譯時的多型性,也稱靜態多型性,它是通過函式過載和運算子過載實現的。動態聯編支援的多型性稱為執行時的多型性,也...

C 的多型性

type text css rel stylesheet href 是允許將父物件設定成為和乙個或多個它的子物件相等的技術,比如parent child 多型性使得能夠利用同一類 基類 型別的指標來引用不同類的物件,以及根據所引用物件的不同,以不同的方式執行相同的操作.c 中多型更容易理解的概念為允...

C 的多型性

c 的多型性分為兩種,一是執行時的多型性,二是編譯時的多型性,這裡我就不多介紹了。才是做好的說明,在 中有注釋以及我的理解。不知道自己這樣解釋是否正確。如下 執行時的多型性 include using namespace std 執行時的多型性是指直到系統執行時,才根據實際情況決定實現何種操作,執行...