總的來說,堆是C語言和操作系統的術語,是操作系統維護的一塊動態分配內存;自由存儲是C++中通過new與delete動態分配和釋放對象的抽象概念。他們並不是完全一樣。
從技術上來說,堆(heap)是C語言和操作系統的術語。堆是操作系統所維護的一塊特殊內存,它提供了動態分配的功能,當運行程序調用malloc()時就會從中分配,稍後調用free可把內存交還。而自由存儲是C++中通過new和delete動態分配和釋放對象的抽象概念,通過new來申請的內存區域可稱爲自由存儲區。基本上,所有的C++編譯器默認使用堆來實現自由存儲,也即是缺省的全局運算符new和delete也許會按照malloc和free的方式來被實現,這時藉由new運算符分配的對象,說它在堆上也對,說它在自由存儲區上也正確。
堆和自由存儲區的區別?
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
數據結構筆記淺記(十四) 樹
原創
2024-05-14 00:28:41
opencvsharp中resize圖像
osc_6mbnx553
2024-05-13 22:07:26
2024 開源之夏|報名 NebulaGraph 項目,領取你的 ¥12,000 獎金
NebulaGraph
2024-05-13 03:51:52
Spring Boot3,啓動時間縮短 10 倍!
原創
2024-05-13 02:20:47
cheerp 編譯器之通用計算模塊ccm1
原創
2024-05-12 21:53:46
雲效 Pipeline as Code 來了!這些場景,用好它效率翻倍!
原創
2024-05-11 21:15:05
「Qt Widget中文示例指南」如何實現一個快捷編輯器(一)
原創
2024-04-30 23:36:29
安全策略增量加速之對象
原創
2024-04-29 22:54:50
數據結構筆記淺記(十二) 雙向隊列
原創
2024-04-18 23:39:23
「Qt Widget中文示例指南」如何實現行編輯功能
原創
2024-04-17 11:37:05
數據結構筆記淺記(九)存儲設備
原創
2024-04-08 23:38:13
Ascend C 自定義PRelu算子
原創
2024-04-08 10:33:15
唐劉:關於產品質量的思考 - 我的基本認知
原創
2024-04-05 22:23:19
數據結構筆記淺記(七)鏈表
原創
2024-04-02 23:38:34