程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 學習筆記---C++虛函數,純虛函數

學習筆記---C++虛函數,純虛函數

編輯:C++入門知識

1 .虛函數

假設people是man的父類,people類和man類都定義了實函數walk()

people* p = new man();

p->walk();

這裡P執行的是people類的walk()函數。這和java語言不一樣,java在這裡執行的是man的walk()函數。那麼C++如何實現子類的方法重寫,並動態定位到子類方法?

這裡必須使用virtual關鍵字 定義父類和子類的walk()

virtual void walk();

現在執行 p->walk();就是執行的子類的walk()。

2.純虛函數

virtual void walk()=0;這裡就定義了一個純虛函數,可以在父類中不實現它,而在子類中去實現它。

如果在man類也沒有實現walk函數,則

people* p = new man();

會報錯,man類是一個抽象的類。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved