作者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/cn.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