1. 程式人生 > >C++: 繼承和多型(二)虛擬函式

C++: 繼承和多型(二)虛擬函式

C++多型

多型的基礎:動態繫結

基類指標(同引用) 指向一系列的派生類物件,通過指標呼叫派生類物件的同名覆蓋方法,指標指向誰,就會呼叫誰的方法


虛擬函式表

 

 


虛擬函式的呼叫

在成員函式中呼叫虛擬函式

 

在建構函式和解構函式中呼叫虛擬函式

 

注意區分多型和非多型的情況


虛解構函式

 


純虛擬函式

 

 

 


問題:

  • 【1】建構函式或解構函式內部不能呼叫純虛擬函式 (注意不是虛擬函式)
  • 【2】inline能不能是虛擬函式
  • 【3】static能不能是虛擬函式
  • 【4】構造/析構能不能是虛擬函式
  • 【5】派生類的解構函式無法呼叫 ?? 怎麼處理