Re: [理工] 106北科程設

作者: dmeiki (熊麻吉)   2020-02-22 15:31:28
※ 引述 《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 的時候再複製一次。
有錯請指正,謝謝。
作者: susubottle (飛天瓶)   2020-02-22 20:33:00
謝謝你的回文
作者: dmeiki (熊麻吉)   2020-02-23 10:06:00
C++primer 裡 copy control 的章節有寫

Links booklink

Contact Us: admin [ a t ] ucptt.com