總的來說,堆是C語言和操作系統的術語,是操作系統維護的一塊動態分配內存;自由存儲是C++中通過new與delete動態分配和釋放對象的抽象概念。他們並不是完全一樣。
從技術上來說,堆(heap)是C語言和操作系統的術語。堆是操作系統所維護的一塊特殊內存,它提供了動態分配的功能,當運行程序調用malloc()時就會從中分配,稍後調用free可把內存交還。而自由存儲是C++中通過new和delete動態分配和釋放對象的抽象概念,通過new來申請的內存區域可稱爲自由存儲區。基本上,所有的C++編譯器默認使用堆來實現自由存儲,也即是缺省的全局運算符new和delete也許會按照malloc和free的方式來被實現,這時藉由new運算符分配的對象,說它在堆上也對,說它在自由存儲區上也正確。
堆和自由存儲區的區別?
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
「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
Higress 基於自定義插件訪問 Redis
原創
2024-04-01 21:12:22
Qt/C++入門基礎學習001-繪圖基礎
原創
2024-04-01 10:40:21
百億大規模圖在廣告場景的應用
原創
2024-03-29 21:16:38
LLM大模型推理加速實戰:vllm、fastllm與llama.cpp使用指南
原創
2024-03-26 12:51:26
英特爾助力龍蜥加速 AI 應用及 LLM 性能
原創
2024-03-23 00:43:41
數據結構筆記淺記(三)空間複雜度
原創
2024-03-23 00:43:15