第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

構(gòu)造函數(shù)順序

為什么實例化對象A時,如果對象A有對象成員B,那么先執(zhí)行對象A的構(gòu)造函數(shù),再執(zhí)行B的構(gòu)造函數(shù)。這句話錯了?

正在回答

3 回答

銷毀的時候不是應該先銷毀B,再銷毀A嗎?為什么C是對的?

0 回復 有任何疑惑可以回復我~
#1

Allisam

A是箱子,B是箱子里的東西,要從外到內(nèi)銷毀。先拆箱子A,再銷毀里面的東西B
2021-03-14 回復 有任何疑惑可以回復我~

因為A包含了對象B,也就是說要想“建造”A,必須先有B作為基礎(chǔ),所以,當對象B是對象A的一個數(shù)據(jù)成員時,先構(gòu)造B,再構(gòu)造A。可以利用代碼簡單跟蹤一下:

class?Member
{
public:
?Member()
?{
??????std::cout?<<?"Member's?constructor"?<<?std::endl;
?}
private:
?????int?m_iA;
};

class?Combination
{
pubilc:
????Combination()
????{
????????std::cout?<<?"Combination's?constructor"?<<?std::endl;
????}
private:
????Member?m_mMem;????
}

int?main()
{
????Combination?c;
????return?0;
}
1 回復 有任何疑惑可以回復我~

類A中有 類B類型的成員對象,那么實例化A時,會先實例化B,即調(diào)用B的構(gòu)造函數(shù),再調(diào)用A的構(gòu)造函數(shù)。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
C++遠征之封裝篇(下)
  • 參與學習       70903    人
  • 解答問題       533    個

封裝--面向?qū)ο笕筇卣髦?,通過案例讓C++所學知識融會貫通

進入課程

構(gòu)造函數(shù)順序

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號