14 1 2虛函式下,誰訪問了成員函式

2021-06-22 06:40:57 字數 867 閱讀 4641

/*

* 程式的版權和版本宣告部分

* 檔名稱:a.cpp

* 作 者:孔雲

* 完成日期:2023年5月28日

* 版 本 號: v1.0

* 輸入描述:主函式已給出

* 問題描述:理解基類中虛函式的作用,指向基類的指標訪問成員函式

* 輸出描述:略。

*/#include using namespace std;

class vehicle //交通工具

心得體會:當基類的指標指向派生類時,指標呼叫同名成員函式,執行的是派生類的成員函式,

因為在基類中run函式被宣告為虛函式,在宣告派生類時被過載,這時派生類中的同名函式run函式就取代了其基類中的虛函式。

因此在使基類指標指向派生類中物件後,呼叫run函式時就呼叫了派生類中的run函式。

vp是同乙個基類指標,可以呼叫同一類族中不同類的虛函式,這就是多型性。

當基類同名成員函式定義為純虛函式後,發生:

d:\gdfytj\main.cpp|7|error: expected unqualified-id before '{' token|

d:\gdfytj\main.cpp|30|error: cannot declare variable 'v' to be of abstract type 'vehicle'|

因為包含純虛函式的類為抽象類,純虛函式是不能被呼叫的,包含純虛函式的類是無法建立

物件的,抽象類的作用是作為乙個類族的共同基類,即為乙個類族提供乙個公共介面。



成員函式虛函式玩一下虛函式。。。

在本文中,我們主要介紹成員函式虛函式的內容,自我感覺有個不錯的建議和大家分享下 程式的版權和版本宣告部份 檔名稱 x.cpp 完成日期 2013年 5月 31 日 版本號 v1.0 輸入描述 問題描述 1 請寫出程式的執行結果,並在上機時對比理解 請答覆 當基類的指標指向派生類時,用指標呼叫同名成員...

C 利用位址訪問虛函式

include stdafx.h include using namespace std typedef void func void 函式別名 typedef void stdcall func int 如果構造有引數,則使用這個寫法的別名 class a virtual void format ...

C 知識點51 虛函式與純虛函式(下)

10.練習 示例class base 上面乙個有三個類base,derive,derive2,基類base中只定義了虛函式vfunc,base的子類derive中,定義了vfunc和vfunc2,但是vfunc和基類中的vfunc的形參列表不同,且子類中的vfunc沒有override關鍵字修飾,所...