| 查看: 1455 | 回復: 14 | ||
微塵、夢想木蟲 (知名作家)
|
[求助]
復制構造函數(shù)問題
|
|
書上說:復制構造函數(shù)在以下3種情況下會被調(diào)用: 1、用類的對象去初始化該類的另一個對象時; 2、函數(shù)的形參是類的對象時; 3、函數(shù)的返回值是類的對象時。 程序: 問題:該程序在第三種情況時并沒有調(diào)用復制構造函數(shù),其執(zhí)行結果為: 調(diào)用復制構造函數(shù) 10 40 調(diào)用復制構造函數(shù) 100 800 3 5 不知道為什么,謝謝各位指點。! |

至尊木蟲 (著名寫手)
驃騎將軍

木蟲 (知名作家)

至尊木蟲 (著名寫手)
驃騎將軍

木蟲 (知名作家)

至尊木蟲 (著名寫手)
驃騎將軍

至尊木蟲 (著名寫手)
驃騎將軍

木蟲 (知名作家)

|
你記住一些規(guī)則和一些例外就可以理解了: 規(guī)則1:任何C++對象都需要由構造函數(shù)初始化,特別的,內(nèi)建類型也支持初始化語法,如int n(0); 規(guī)則2:任何已經(jīng)存在的C++對象都不再調(diào)用構造函數(shù),對已經(jīng)存在的對象賦值的結果就是調(diào)用operator= 但是,C++的語法導致了很多陷進。陷進之一就是,對這樣的語法: 三種情況實際上是等價的,第一種是最有效的方式;第二種的話,如果編譯器不夠聰明,就會先初始化A(7)和a2,然后對a2調(diào)用operator=,如果沒有默認構造函數(shù),就會出錯;第三種情況就是第二種情況的后備,更加有效,而且即使屏蔽默認構造函數(shù)也不會有出錯的風險。 當然,如果編譯器足夠聰明,就會阻止樓主往陷進里面跳了。所以,嗯,工欲善其事必先利其器啊 |


| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 一志愿吉大化學322求調(diào)劑 +4 | 17501029541 2026-03-23 | 6/300 |
|
|---|---|---|---|---|
|
[考研] 材料調(diào)劑 +5 | 匹克i 2026-03-23 | 5/250 |
|
|
[考研] 一志愿北京化工大學 070300 學碩 336分 求調(diào)劑 +7 | vv迷 2026-03-22 | 7/350 |
|
|
[考研] 一志愿華東理工大學081700,初試分數(shù)271 +4 | kotoko_ik 2026-03-23 | 5/250 |
|
|
[考研] 一志愿211 初試270分 求調(diào)劑 +4 | 谷雨上岸 2026-03-23 | 5/250 |
|
|
[考研] 336化工調(diào)劑 +4 | 王大坦1 2026-03-23 | 5/250 |
|
|
[考研] 一志愿上海交大生物與醫(yī)藥專碩324分,求調(diào)劑 +5 | jiajunX 2026-03-22 | 5/250 |
|
|
[考研] 求調(diào)劑一志愿武漢理工大學材料工程(085601) +3 | WW.' 2026-03-23 | 5/250 |
|
|
[考研] 070300,一志愿北航320求調(diào)劑 +3 | Jerry0216 2026-03-22 | 5/250 |
|
|
[考研] 323求調(diào)劑 +6 | 洼小桶 2026-03-18 | 6/300 |
|
|
[考研] 306求調(diào)劑 +5 | 來好運來來來 2026-03-22 | 5/250 |
|
|
[考研] 考研調(diào)劑 +4 | 來好運來來來 2026-03-21 | 4/200 |
|
|
[考研] 266求調(diào)劑 +3 | 哇呼哼呼哼 2026-03-20 | 3/150 |
|
|
[考研] 085601調(diào)劑 358分 +3 | zzzzggh 2026-03-20 | 4/200 |
|
|
[考研] 265求調(diào)劑 +3 | Jack?k?y 2026-03-17 | 3/150 |
|
|
[考研] 一志愿華中科技大學,080502,354分求調(diào)劑 +5 | 守候夕陽CF 2026-03-18 | 5/250 |
|
|
[考研] 304求調(diào)劑 +6 | 曼殊2266 2026-03-18 | 6/300 |
|
|
[考研] 321求調(diào)劑 +9 | 何潤采123 2026-03-18 | 11/550 |
|
|
[考博] 申博26年 +3 | 八6八68 2026-03-19 | 3/150 |
|
|
[考研] 一志愿福大288有機化學,求調(diào)劑 +3 | 小木蟲200408204 2026-03-18 | 3/150 |
|