正文

回到頂部

1.默認(rèn)構(gòu)造函數(shù)介紹

在設(shè)計(jì)良好的面向?qū)ο笙到y(tǒng)中,會(huì)將對(duì)象的內(nèi)部進(jìn)行封裝,只有兩個(gè)函數(shù)可以拷貝對(duì)象:拷貝構(gòu)造函數(shù)和拷貝賦值運(yùn)算符。我們把這兩個(gè)函數(shù)統(tǒng)一叫做拷貝函數(shù)。從Item5中,我們得知,如果需要的話編譯器會(huì)為你生成這兩個(gè)拷貝函數(shù),并且編譯器生成的版本能夠精確的做到你想做的:它們拷貝了對(duì)象的所有數(shù)據(jù)。

回到頂部

2.自己實(shí)現(xiàn)構(gòu)造函數(shù)有可能出現(xiàn)問題 

當(dāng)你聲明自己的拷貝函數(shù)的時(shí)候,你就會(huì)向編譯器表示,你對(duì)編譯器生成版本的拷貝函數(shù)有些地方不是很喜歡。你的這種做法會(huì)讓編譯器以一種奇怪的方式進(jìn)行報(bào)復(fù):如果你自己實(shí)現(xiàn)的拷貝函數(shù)出現(xiàn)了問題,編譯器不會(huì)告訴你。

2.1 問題出現(xiàn)場(chǎng)景一

考慮一個(gè)表示消費(fèi)者的類,類中的拷貝函數(shù)已經(jīng)被手動(dòng)實(shí)現(xiàn)了,所以調(diào)用它們會(huì)被記入日志:

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式