[問題] pointer的double free
int main()
{
int* x=new int;
*x =10;
delete[] x;
delete[] x;
}
我寫個程式長這樣
不過也沒有發生什麼不幸的事情
我們常看到的double free
不是就是這種情形嗎?
還是說
是free第一次之後有用其他的pointer
所以那一塊的heap memory就被其他pointer使用
結果在之後又free第二次了
所以就free到不該free的地方這樣嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.251.212
→
07/14 11:04, , 1F
07/14 11:04, 1F
→
07/14 11:19, , 2F
07/14 11:19, 2F
推
07/15 00:34, , 3F
07/15 00:34, 3F
→
07/15 00:34, , 4F
07/15 00:34, 4F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):