virtual虛函式的作用

2022-05-13 23:55:48 字數 655 閱讀 8780

#include

#include

using namespace std;

class person

;~person() {};

void print()

};class student: public person

;~student() {};

void print()

};void show(person *per1)

int main()

person的物件指標指向繼承類的物件時,沒有用virtual,仍然呼叫person的函式,輸出如下:

這是因為在沒有宣告虛函式的時候,在編譯的時候就就進行了繫結。而是使用了virtual宣告,就會採用遲繫結,到執行的時候再確認使用哪個函式。

#include

#include

using namespace std;

class person

;~person() {};

virtual void print()

};class student: public person

;~student() {};

void print()

};void show(person *per1)

int main()

virtual 虛函式

virtual 虛函式 下面是對c 的虛函式這玩意兒的理解。一,什麼是虛函式 如果不知道虛函式為何物,但有急切的想知道,那你就應該從這裡開始 簡單地說,那些被virtual關鍵字修飾的成員函式,就是虛函式。虛函式的作用,用專業術語來解釋就是實現多型性 polymorphism 多型性是將介面與實現進...

虛函式(virtual)

上面提到動態多型主要通過虛函式機制實現,這裡介紹以下虛函式。和普通的函式宣告方式相同,只要在函式的返回值前加上virtual關鍵字,該函式就為虛函式,即virtual 函式型別 函式名 形式引數 虛函式的作用 允許通過基類的指標或引用來訪問基類和派生類的同名函式。include using name...

C 中virtual 虛函式的作用介紹

虛函式是定義在基類中的函式,子類必須對其進覆蓋。在類中宣告虛函式的格式 virtual void display 1 定義子類物件,並呼叫物件中未被子類覆蓋的基類函式a。同時在該函式a中,又呼叫了子類覆蓋的基類函式b。此刻將會呼叫基類中的函式b,而我們原本是想呼叫是子類中的覆蓋函式b。而使用虛函式就...