C++ new分配的記憶體未釋放,作業系統會回收這部分記憶體嗎?
uj5u.com熱心網友回復:
會的,程式退出了,就回收了uj5u.com熱心網友回復:
會的,但是如果不呼叫delete釋放記憶體,即使物件由于作用域規則和物件生命周期的原因而被釋放,在自由存盤空間上動態分配的變數或結構也將繼續存在。這樣的話,也就是說,實際上將會無法訪問自由存盤空間中的結構,會導致記憶體泄漏。
被泄露的記憶體將在程式的整個生命周期內部都不可使用。
以上參考與C++ Primer Plus第四章復合型別的小字部分

具體的可以百度一下關于“堆疊、堆和記憶體泄漏”的相關內容哦~
uj5u.com熱心網友回復:
自然會,程式結束,系統自動回收。這不是真正的程式,軟體會幫你結束程式,否則就會記憶體泄漏最標準推薦使用delete釋放記憶體空間,以防萬一
有一些軟體也不一定有這個功能,最好就直接delete
uj5u.com熱心網友回復:
new和delete最好成對使用,確保記憶體沒有泄漏,否則容易引起程式例外,可以使用valgrind進行檢查轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/84723.html
標籤:C++ 語言
上一篇:哪里不對
下一篇:房間類Room
