關於虛函式與純虛函式的幾點
虛函式虛函式的關鍵字是virtual
虛函式是提供一種「推遲聯編」或者「動態聯編」的功能,來實現多型性,形成虛指標。虛函式的呼叫並不是在編譯時刻被確定的,而是在執行時刻被確定的。
乙個**示列:
#include using namespace std;
class base1
;void base1::display()const
int main()
執行結果:
base1::display()
base2::display()
derived::display()
program ended with exit code: 0
純虛函式
純虛函式是在基類中宣告的虛函式,它在基類中沒有定義,所以不能例項化不能產生物件。在基類中實現純虛函式的方法是在函式原型後加「=0」
virtual void funtion1()=0
其中虛函式的主要作用是:使基類中的純虛函式僅僅只是繼承函式的乙個介面。
其中含有純虛函式的類被稱為抽象類,若抽象類在繼承中純虛函式還是沒有被實現則還是抽象類
抽象類的作用:產生乙個介面被派生類繼承
#include using namespace std;
class base1
;class base2:public base1
;void base2::display()const
int main()
執行結果
base2::display()
derivd::display()
program ended with exit code: 0
詳情請看 虛函式與純虛函式
1 基本形式 virtual returntype function 1 虛函式宣告 virtual returntype function 2 0 純虛函式宣告 先講示例吧,再總結結論。2 示例 classanimail 這段 的輸出結果是什麼呢?起初我認為是 animail function 1...
虛函式與純虛函式
參考 虛函式 比如 virtual void function1 virtual關鍵字修飾的 成員函式 就是虛函式。把基類的成員函式 設為virtual,其 派生類的相應的函式也會自動變為虛函式。指向 基類的指標在操作它的 多型類物件時,會根據不同的類物件,呼叫其相應的函式,這個函式就是虛函式。純虛...
虛函式與純虛函式
1 基本形式 virtual returntype function 1 虛函式宣告 virtual returntype function 2 0 純虛函式宣告 先講示例吧,再總結結論。2 示例 classanimail 這段 的輸出結果是什麼呢?起初我認為是 animail function 1...