對C 虛函式的理解

2022-08-19 03:39:14 字數 401 閱讀 1631

關於類不斷被繼承的過程,從整體上看,是乙個從抽象到逐漸具體化的過程,基類可以是非常非常抽象的東西,而最終例項化的派生類就非常具體了。

虛函式的意義,就在於定義了乙個從最早的基類到最終的派生類都可能會用到(根據需求可以選擇重新實現還是不重新實現,但純虛函式必須實現,關於原因,我已經在其他文章說過)的乙個功能。

在這個派生類不斷繼承基類的過程中,這個功能會根據派生類的需求不斷地變化。我們在呼叫不同派生類的虛函式的時候,可以擁有不同的功能。然後有人說,這麼麻煩,還不如每個派生類都自己重新命名乙個函式就行了,理論上來說,完全可以,在乙個父類和其繼承類不多的專案中,這麼做完全可以,只要你自己能熟記或者找到這個重新命名函式是幹嘛用的;但是在大一點的專案中,由於類中的函式成百上千,恐怕你就會為此瘋掉。

C 我對虛函式的理解

虛函式 就是在宣告時前面加了virtual 關鍵字的成員函式。用來構成多型類就不用說了 好吧,在不了解太多底層知識的情況下,講白了,虛函式的作用是滿足一定條件下,阻止靜態聯編,使得在執行到通過基型別指標ptr呼叫的,在基類和派生類中都有的同名同引數列表的成員 虛 函式func的語句時,根據指標ptr...

c 虛函式 的理解

class a virtual void print class b public a void print class c public b void print int main 個人的淺顯理解,歡迎大神拍磚怒噴,1 虛函式 虛函式可以看做介面,乙個父類提供乙個虛函式,則 每個子類可以實現自己不...

c 虛函式的理解

虛函式的作用 可以讓成員函式操作一般化,用基類的指標指向不同的派生類的物件時,基類指標呼叫其虛成員函式,則會呼叫其真正指向物件的成員函式,而不是基類中定義的成員函式 只要派生類改寫了該成員函式 若不是虛函式,則不管基類指標指向的哪個派生類物件,呼叫時都 會呼叫基類中定義的那個函式。示例 不使用虛函式...