C++多繼承中虛基類

C++中多繼承時,派生類難免繼承兩個或多個基類的同名函數,因此,對於派生類對象調用同名函數時便產生了二義性(該對象不知道到底調用來自於哪一個直接基類的函數)。解決辦法:虛基類

虛基類使得從多個類派生出的對象只繼承一個基類對象,而此時,從多個類派生出的派生類必須定義每一個同名函數,否則編譯時報錯。見P556。


C++中基類是虛基類時,禁止信息通過中間類將參數自動傳遞給基類構造函數。因此,如果不在派生類的派生類初始化列表中直接調用虛基類的構造函數,那麼,編譯器將會調用虛基類的默認構造函數初始化基類部分的數據成員。

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