国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表

圖片精選

主站蜘蛛池模板: 罗田县| 长宁县| 武安市| 环江| 盐边县| 苍山县| 浪卡子县| 长乐市| 万山特区| 磐石市| 鲁甸县| 沧源| 克山县| 平潭县| 甘孜县| 贵定县| 琼结县| 广宁县| 通河县| 宝兴县| 九龙城区| 名山县| 贵州省| 永仁县| 容城县| 虎林市| 盐津县| 南开区| 丹阳市| 盘锦市| 珲春市| 榆树市| 惠水县| 长海县| 西吉县| 建瓯市| 深水埗区| 鹤山市| 三都| 巴彦淖尔市| 敖汉旗|