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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我更喜歡使用成員初始化列表?

為什么我更喜歡使用成員初始化列表?

C++ C
侃侃爾雅 2019-05-30 16:08:26
為什么我更喜歡使用成員初始化列表?我傾向于在構(gòu)造函數(shù)中使用成員初始化列表.但我早就忘了這背后的原因.。在構(gòu)造函數(shù)中使用成員初始化列表嗎?如果是,為什么?若否,原因為何?
查看完整描述

3 回答

?
達令說

TA貢獻1821條經(jīng)驗 獲得超6個贊

除了上面提到的性能原因之外,如果您的類存儲對作為構(gòu)造函數(shù)參數(shù)傳遞的對象的引用,或者您的類有Const變量,那么除了使用初始化程序列表之外,您別無選擇。


查看完整回答
反對 回復(fù) 2019-05-30
?
www說

TA貢獻1775條經(jīng)驗 獲得超8個贊

  1. 基類初始化

這里沒有提到的構(gòu)造函數(shù)初始化程序列表使用的一個重要原因是基類的初始化。

根據(jù)構(gòu)造的順序,基類應(yīng)該在子類之前構(gòu)造。如果沒有構(gòu)造函數(shù)初始化程序列表,這是可能的,如果您的基類具有默認(rèn)構(gòu)造函數(shù),該構(gòu)造函數(shù)將在輸入子類的構(gòu)造函數(shù)之前調(diào)用。

但是,如果基類只有參數(shù)化構(gòu)造函數(shù),則必須使用構(gòu)造函數(shù)初始化程序列表來確?;愒谧宇愔氨怀跏蓟?/trans>

  1. 只具有參數(shù)化構(gòu)造函數(shù)的子對象的初始化

  2. 效率

使用構(gòu)造函數(shù)初始化程序列表,可以將數(shù)據(jù)成員初始化為代碼中需要的狀態(tài),而不是首先將其初始化為默認(rèn)狀態(tài)&然后將其狀態(tài)更改為代碼中所需的狀態(tài)。

  1. 初始化非靜態(tài)Const數(shù)據(jù)成員

如果類中的非靜態(tài)Const數(shù)據(jù)成員具有默認(rèn)構(gòu)造函數(shù)&不使用構(gòu)造函數(shù)初始化程序列表,則無法將它們初始化到預(yù)期狀態(tài),因為它們將被初始化為默認(rèn)狀態(tài)。

  1. 引用數(shù)據(jù)成員的初始化

當(dāng)編譯器進入構(gòu)造函數(shù)時,引用數(shù)據(jù)成員必須被初始化,因為引用不能在以后聲明和初始化。這只有在構(gòu)造函數(shù)初始化程序列表中才有可能。


查看完整回答
反對 回復(fù) 2019-05-30
  • 3 回答
  • 0 關(guān)注
  • 558 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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