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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

C+:類數(shù)據(jù)成員的初始化順序

C+:類數(shù)據(jù)成員的初始化順序

C++
手掌心 2019-07-13 15:05:21
C+:類數(shù)據(jù)成員的初始化順序在下面的代碼中,當(dāng)X名為Will the ctor ofA或B先打電話?它們放在類主體中的順序是否控制了這一點(diǎn)?如果有人能從C+標(biāo)準(zhǔn)中提供一段文字來討論這個(gè)問題,那就太完美了。class A {};class B {};class X{  A a;  B b;};
查看完整描述

2 回答

?
LEATH

TA貢獻(xiàn)1936條經(jīng)驗(yàn) 獲得超7個(gè)贊

順序是它們?cè)陬惗x中出現(xiàn)的順序-這來自C+標(biāo)準(zhǔn)第12.6.2節(jié):

5.初始化應(yīng)按以下順序進(jìn)行:

-首先,并且僅對(duì)于下面描述的最派生類的構(gòu)造函數(shù),虛擬基類應(yīng)按照它們?cè)诨惖挠邢驘o圈圖的深度(首先左向右遍歷)上出現(xiàn)的順序進(jìn)行初始化,其中“左到右”是派生類基類說明符-列表中基類名稱的出現(xiàn)順序。

-然后,直接基類將按聲明順序初始化,就像它們出現(xiàn)在基類說明符列表中一樣(不管mem初始化器的順序如何)。

-然后,非靜態(tài)數(shù)據(jù)成員應(yīng)按照類定義中聲明的順序進(jìn)行初始化(同樣,無論mem-initializer的順序如何)。

-最后,執(zhí)行構(gòu)造函數(shù)的主體。[注:聲明命令的任務(wù)是確保以初始化的相反順序銷毀基和子對(duì)象。]


查看完整回答
反對(duì) 回復(fù) 2019-07-13
?
繁花不似錦

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊

初始化總是按照類成員出現(xiàn)在類定義中的順序進(jìn)行,在您的示例中是這樣的。a,然后b.

在每個(gè)成員的初始化和您的能,會(huì),可以將對(duì)尚未初始化的成員的引用傳遞到類成員的構(gòu)造函數(shù)中,但您只能以有限的方式使用它(例如將其地址作為指針),其他用途很可能導(dǎo)致未定義的行為。

階級(jí)成員的毀滅總是以相反的順序發(fā)生。

基和成員的初始化順序在12.6.2[class.base.init]/5中定義。


查看完整回答
反對(duì) 回復(fù) 2019-07-13
  • 2 回答
  • 0 關(guān)注
  • 579 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

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