深度探索C++對象模型學習筆記——Function語意學

C++支持三種類型的成員函數:靜態,非靜態、和虛函數

 

虛函數細節:
每個class有一個virtual table,內含該class之中有作用的virtual function地址,然後每個object有一個vptr,指向virtual table的所在。
對於虛函數ptr->z();的調用,需要知道如下兩點:
1.ptr所指對象的真實類型,可使選擇正確的z()實體;
2.z()實體位置

 

多重繼承之下,一個derived class內含n-1個額外的virtual tables。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章