天天看點

c++派生類向基類轉換的可通路性

隻有當 D 公有地繼承  B 時,使用者代碼才能使用派生類向基類的轉換;如果 D 繼承 B 的方式 是受保護的或者私有的,則使用者代碼不能使用該轉換

不論 D 以什麼方式繼承 B ,D 的成員函數和友元都能使用該派生類向基類的轉換;派生類向直接基類的類型轉換對于派生類的成員和友元來說永遠是可通路的

如果 D 繼承 B 的方式是公有地或者受保護的,則 D 的派生類的成員和友元可以使用 D 向 B 的類型轉換;反之,如果 D  繼承 B 的方式是私有的,則不能使用

繼續閱讀