作者dmeiki (熊麻吉)
看板Grad-ProbAsk
標題Re: [理工] 106北科程設
時間Sat Feb 22 15:31:28 2020
※ 引述 《susubottle》 之銘言:
: 想請問6-6為什麼是28不是24?
: (答案框的鉛筆字是用程式跑的輸出)
:
: https://i.imgur.com/5oCBTSg.jpg
我用 GDB 發現他會先執行 Number(Number &cn) 這個 copy constructor之後,
再執行 compute ,然後 return cn的時候,還會再呼叫一次 Number(Number &cn)。
原因應該是因為 compute 的第一個參數是 Number cn,他要先複製 Number class,
所以呼叫 copy constructor,return cn 的時候再複製一次。
有錯請指正,謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.133.112 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1582356690.A.055.html
1F:推 susubottle: 謝謝你的回文 02/22 20:33
2F:→ dmeiki: C++primer 裡 copy control 的章節有寫 02/23 10:06