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

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

堆中聲明的疑問

Student *p = new Student()? 和 Student *p = new Student;

有什么區(qū)別么,都是可以運(yùn)行的呀

正在回答

3 回答

不加括號代表默認(rèn)初始化(default initialize),類型后加上空括號代表值初始化(value initialize)。

對于有構(gòu)造函數(shù)的類,這兩種形式都是調(diào)用其默認(rèn)構(gòu)造函數(shù)。沒有區(qū)別。

但對于built-in類型,由于沒有默認(rèn)構(gòu)造函數(shù),所以默認(rèn)初始化會導(dǎo)致初值未定。而值初始化則一般會初始化為0。

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

一些string類型的字符串. 他們不是初始化null的么

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

意思就是在對于有構(gòu)造函數(shù)的類 加與不加()都是沒關(guān)系的;

而對于沒有構(gòu)造函數(shù)的類,

加()會初始化對象的值,也就是String = null,int/float/double = 0,

不加()則不會,值就會隨編譯器而定;

這樣理解對么?

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

onemoo

是的,對類來說是調(diào)用默認(rèn)構(gòu)造函數(shù),而對于 int float double 來說,加上()確實(shí)是初值為0,不加的話,初值是隨機(jī)的。 不過你說的String是什么意思?
2015-07-22 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

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

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

進(jìn)入課程

堆中聲明的疑問

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

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

幫助反饋 APP下載

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

公眾號

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