Q:
==
在昨天上課第二堂一開始講的東西我有點不太清楚想問一下
老師有舉個例子
{
A* p= new A;
}
delete p;
[call ]
~A( );
請問一下 這邊想要表達的主旨是什麼
是說離開 { } 後 會自動call delete p and then call destructor ?
還是 說…
還是我還有漏掉什麼? 記得老師是舉兩個來比較
-------------------------------------------------------
A:
==
{
A* p= new A;
}
結束後並不會自動 call "delete p". 只會將 local variable p 還給系統.
如果你要將 p 所指的記憶體空間釋放, 你必須 explicitly 呼叫 "delete p",
然後他才會去呼叫 p 的 destructor ~p().
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.121.134.251