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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

const

private:
?const double m_dPi = 3.14;
這樣寫合法嘛?
合法的話是不是就不需要初始化列表了

正在回答

2 回答

不合法,private下是定義數(shù)據(jù)成員的,一般不賦值

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

qq_大巫師_0

為什么?我在VS2017下這樣操作并沒有出錯(cuò)啊。 private: const double m_dPi = 3.14;
2018-10-08 回復(fù) 有任何疑惑可以回復(fù)我~

類內(nèi)成員變量一般有如下四種:

1、一般變量(int)

2、靜態(tài)成員變量(static int)

3、常量(const int )

4、靜態(tài)常量(static const int)

對(duì)應(yīng)初始化方式如下:

1、一般變量可以在初始化列表里或者構(gòu)造函數(shù)里初始化,不能直接初始化或者類外初始化

2、靜態(tài)成員變量必須在類外初始化

3、常量必須在初始化列表里初始化

4、靜態(tài)常量必須只能在定義的時(shí)候初始化(定義時(shí)直接初始化)

回到樓主的問題上,這種成員變量應(yīng)該是屬于第三種,也就是必須在初始化列表里初始化。

但是如果你代碼這么寫的話,編譯也可以通過(vs2017),但是使用效果上是有區(qū)別的。

在定義時(shí)直接初始化const常量的話,用這個(gè)類實(shí)例化出來的每個(gè)對(duì)象中的const常量都是同一個(gè)數(shù)值,而如果是通過初始化列表來初始化的話,const常量的值取決于實(shí)例化時(shí)傳給const常量的初始化值。

也就是說,樓主說的這種的情況的話最好使用第四種成員變量形式。

4 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
C++遠(yuǎn)征之封裝篇(上)
  • 參與學(xué)習(xí)       103386    人
  • 解答問題       732    個(gè)

封裝--面向?qū)ο蟮幕?,本教程力求幫助小伙伴們即學(xué)即會(huì)

進(jìn)入課程
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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