作者onicalz ()
站內C_and_CPP
標題[問題] klocwork CL.FFM.COPY
時間Fri Sep 23 00:10:51 2011
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
問題(Question):
這是在Klocwork看到的一個問題, 請各位幫忙解答 ~
如網址所示...
http://0rz.tw/5ThyG
請問
1) 為什麼他的example 會造成 freeing already free memory (FFM) 呢??
不懂會造成FFM的原因 ><
2) 為什麼他的解法是把 assign 的那段搬回 private, 這樣做為什麼能解決這個問題??
3) 在solution中 還另外implement 了一個 CData 這又有什麼幫助呢??
4) 除了 網站上提供的解法 還有其他解法嗎??
感謝各位大大幫我解答了..非常感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.115.49.26
推 LPH66:問題在於 copy ctor (話說這和上一篇的問題貌似很像?) 09/23 00:18
→ LPH66:因為預設的 copy ctor 只做 shallow copy 的關係 09/23 00:19
→ onicalz:謝謝lph大的指導~ 我會再多想想的 09/23 01:50