国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++Primer第五版 第七章習(xí)題答案(41~50)

2019-11-08 00:41:43
字體:
供稿:網(wǎng)友

41、42知識點1:委托構(gòu)造函數(shù):一個委托構(gòu)造函數(shù)使用它所屬類的其他構(gòu)造函數(shù)執(zhí)行它自己的初始化過程。

class OH{OH(string s, int a, int b):book(s),PRice(a),sale(b){} //三參數(shù)構(gòu)造函數(shù)的參數(shù)列表和函數(shù)體首先被執(zhí)行OH():OH("",0,0);//默認(rèn)構(gòu)造函數(shù)又委托給了三參數(shù)構(gòu)造函數(shù)OH (istream& is):OH(){}//OH (istream& is)是一個委托構(gòu)造函數(shù),它委托給了默認(rèn)構(gòu)造函數(shù)OH()string book;int price;int sale;};

知識點2:當(dāng)構(gòu)造函數(shù)委托給另一個構(gòu)造函數(shù)時,受委托的構(gòu)造函數(shù)的初始值列表及其函數(shù)體先被執(zhí)行,接著才會執(zhí)行到委托函數(shù)的函數(shù)體。

class OH{OH(string s, int a, int b):book(s),price(a),sale(b){cout<<"OH(string s, int a, int b)"<<endl;} //三參數(shù)構(gòu)造函數(shù)的參數(shù)列表和函數(shù)體首先被執(zhí)行OH():OH(" ",0,0);//默認(rèn)構(gòu)造函數(shù)又委托給了三參數(shù)構(gòu)造函數(shù)OH (istream& is):OH(){cout<<"OH (istream& is)"<<endl;}//OH (istream& is)是一個委托構(gòu)造函數(shù),它委托給了默認(rèn)構(gòu)造函數(shù)OH()string book;int price;int sale;};

PS:41、42知識點為C++11特性

43:知識點1:默認(rèn)構(gòu)造函數(shù)在很多情況下也是非常重要的。

1:當(dāng)類的作用域內(nèi)不需要使用任何初始值定義非靜態(tài)變量時 2:當(dāng)類中含有需要使用默認(rèn)構(gòu)造函數(shù)當(dāng)作被委托構(gòu)造函數(shù)時 3:類的成員沒有在構(gòu)造函數(shù)初始值列表中顯示初始化時 知識點2:當(dāng)類中定義了其它類型的構(gòu)造函數(shù)時,最好提供一個默認(rèn)的構(gòu)造函數(shù),養(yǎng)成良好的習(xí)慣。 知識點3:類聲明對象是不需要加括號!加括號是聲明函數(shù)的。

OH oh();//不合法的實例化OH oh;//合法

44:因為沒有顯示初始化,此時向量中的十個元素都需要默認(rèn)初始化,但是類NoDefault沒有默認(rèn)的構(gòu)造函數(shù),所以錯誤。

45:合法,C已經(jīng)定義了默認(rèn)的構(gòu)造函數(shù)

46:

(a):錯誤,類本身不提供構(gòu)造函數(shù)時,編譯器會自動合成一個默認(rèn)構(gòu)造函數(shù) (b):錯誤,為成員提供默認(rèn)值的構(gòu)造函數(shù)也成為默認(rèn)構(gòu)造函數(shù) (c):錯誤,見43題知識點1 (d):錯誤,當(dāng)類沒有定義構(gòu)造函數(shù)時,才會默認(rèn)編譯器生成默認(rèn)構(gòu)造函數(shù)。

47:知識點1:如果構(gòu)造函數(shù)只接受一個實參,則它實際上定義了轉(zhuǎn)換為此類類型的隱式轉(zhuǎn)換機制。此構(gòu)造函數(shù)被稱為轉(zhuǎn)換構(gòu)造函數(shù)

知識點2:通過一個實參調(diào)用的構(gòu)造函數(shù)定義了一條從構(gòu)造函數(shù)的參數(shù)類型向類類型隱式轉(zhuǎn)換的機制 知識點3:可以將構(gòu)造函數(shù)聲明為explicit加以限定該類型轉(zhuǎn)換

優(yōu)缺點:這樣的隱式類型轉(zhuǎn)換只能作用于單參數(shù)的構(gòu)造函數(shù),但是相較于兩步的顯示轉(zhuǎn)換,這樣的隱式轉(zhuǎn)換則會省去很多麻煩

48:都不會有任何問題,如若沒有Salesdata在前,則結(jié)果會不一樣。

因為皆顯示地聲明了屬于Salesdata類

49:

(a)合法 (b)不合法,Salesdata&類型與Salesdata類型之間不可轉(zhuǎn)換 (c)不合法,const不對,因為combine本身是需要改變傳入?yún)?shù)的

50:只需要對單參數(shù)的構(gòu)造函數(shù)使用explicit即可。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 澄迈县| 东阿县| 涟水县| 陵川县| 两当县| 清远市| 本溪市| 乃东县| 通化县| 兴山县| 桃江县| 从化市| 南宁市| 普兰县| 凯里市| 陆河县| 社旗县| 昌图县| 石嘴山市| 北宁市| 邵东县| 漠河县| 松潘县| 汉沽区| 乌海市| 托克逊县| 昌邑市| 丰顺县| 新宁县| 江山市| 凉城县| 额敏县| 本溪| 开江县| 哈尔滨市| 四平市| 金川县| 晴隆县| 龙陵县| 南召县| 光泽县|