9.19

當(dāng)派生類與基類中有相同成員時(shí):

若未強(qiáng)行指名,則通過派生類對象使用的是派生類中的同名成員。

如要通過派生類對象訪問基類中被覆蓋的同名成員,應(yīng)使用基類名限定。

多重繼承:

class 派生類名:繼承方式1? 基類名1,繼承方式2? 基類名2,...

{

成員聲明;

}

注意:每一個(gè)“繼承方式”,只用于限制對緊隨其后之基類的繼承。

多繼承時(shí)的構(gòu)造函數(shù):

派生類名::派生類名(基類1形參,基類2形參,...基類n形參,本類形參):基類名1(參數(shù)), 基類名2(參數(shù)), ...基類名n(參數(shù))

{

本類成員初始化賦值語句;

};

二義性問題

在多重繼承時(shí),基類與派生類之間,或基類之間出現(xiàn)同名成員時(shí),將出現(xiàn)訪問時(shí)的二義性(不確定性)——采用虛函數(shù)或同名覆蓋原則來解決。

當(dāng)派生類從多個(gè)基類派生,而這些基類又從同一個(gè)基類派生,則在訪問此共同基類中的成員時(shí),將產(chǎn)生二義性——采用虛基類來解決。

虛基類

虛基類的引入,用于有共同基類的場合

聲明:以virtual修飾說明基類?例:class B1:virtual public B

作用:主要用來解決多繼承時(shí)可能發(fā)生的對同一基類繼承多次而產(chǎn)生的二義性問題.

為最遠(yuǎn)的派生類提供唯一的基類成員,而不重復(fù)產(chǎn)生多次拷貝

注意:在第一級繼承時(shí)就要將共同基類設(shè)計(jì)為虛基類。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 派生類成員的標(biāo)識與訪問 同名覆蓋原則 當(dāng)派生類與基類中有相同成員時(shí): 若未強(qiáng)行指名,則通過派生類對象使用的是派生類...
    張正戈hg閱讀 202評論 0 0
  • 今天上午還是學(xué)習(xí)了 繼承與派生 派生類成員的標(biāo)識與訪問 同名覆蓋原則 若未強(qiáng)行指名,則通過派生類對象使用的是派生類...
    戰(zhàn)昭辰閱讀 129評論 0 0
  • 1.同名覆蓋原則 當(dāng)派生類與基類中有相同成員時(shí): 若未強(qiáng)行指名,則通過派生類對象使用的是派生類中的同名成員。 如要...
    張夢涵625閱讀 249評論 0 0
  • 派生類成員的標(biāo)識與訪問 1.當(dāng)派生類與基類中有相同成員時(shí): 若未強(qiáng)行指名,則通過派生類對象使用的是派生類中的同名成...
    蘆繼超閱讀 215評論 0 0
  • 今天繼續(xù)學(xué)習(xí)了派生類。 當(dāng)派生類與基類中有相同成員時(shí):若未強(qiáng)行指名,則通過派生類對象使用的是派生類中的同名成員。如...
    張微vivi閱讀 151評論 0 0

友情鏈接更多精彩內(nèi)容