成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

各個C++內存區域功能對比

開發 后端
C++內存區域主要被分為五個,分別為:堆,棧,自由存儲區,全局/靜態存儲區和常量存儲區。我們將會對此進行簡單的介紹。

C++作為一款C語言的升級版本,具有非常強大的功能。它不但能夠支持各種程序設計風格,而且還具有C語言的所有功能。我們在這里為大家介紹的是其中一個比較重要的內容,C++內存區域的基本介紹。#t#

C++內存區域分為5個區域。分別是堆,棧,自由存儲區,全局/靜態存儲區和常量存儲區。

棧:由編譯器在需要的時候分配,在不需要的時候自動清除的變量存儲區。里面通常是局部變量,函數參數等。

堆:由new分配的內存塊,他們的釋放編譯器不去管,由我們的應用程序去控制,一般一個new對應一個delete。如果程序員沒有釋放掉,那么在程序結束后,操作系統會自動回收。

自由存儲區:由malloc等分配的內存塊,和堆十分相似,不過它使用free來結束自己的生命。

全局/靜態存儲區:全局變量和靜態變量被分配到同一塊內存中,在以前的c語言中。全局變量又分為初始化的和未初始化的,在c++里面沒有這個區分了,他們共同占用同一塊內存。

常量存儲區:這是一塊比較特殊的存儲區,里面存放的是常量,不允許修改。

C++內存區域中堆和棧的區別:

管理方式不同:棧是由編譯器自動管理,無需我們手工控制;對于堆來說,釋放由程序員完成,容易產生內存泄漏。

空間大小不同:一般來講,在32為系統下面,堆內存可達到4G的空間,從這個角度來看堆內存幾乎是沒有什么限制的。但是對于棧來講,一般都是有一定空間大小的,例如,在vc6下面,默認的棧大小好像是1M。當然,也可以自己修改:打開工程。project-->setting-->link,在category中選中output,然后再reserve中設定堆棧的最大值和commit。

能否產生碎片:對于堆來講,頻繁的new/delete勢必會造成內存空間的不連續,從而造成大量的碎片,使程序效率降低。對于棧來講,則不會存在這個問題。

生長方向不同:對于堆來講,生長方向是向上的,也就是向著內存地址增加的方向;對于棧來講,它的生長方式是向下的,是向著內存地址減小的方向增長。

分配方式不同:堆都是動態分配的;棧有靜態和動態兩種分配方式。靜態分配由編譯器完成,比如局部變量的分配。動態分配由alloca函數進行、但棧的動態分配和堆是不同的,它的動態分配由編譯器進行釋放,無需我們手工實現。

分配效率不同:棧是機器系統提供的數據結構,計算機會在底層對棧提供支持:分配專門的寄存器存放棧的地址,壓棧出棧都有專門的指令執行,這就決定了棧的效率比較高。堆則是c/c++庫函數提供的,機制很復雜。庫函數會按照一定的算法進行分配。顯然,堆的效率比棧要低得多。

以上就是對C++內存區域的基本介紹。

責任編輯:曹凱 來源: 博客園
相關推薦

2010-03-09 19:39:37

python程序調試

2011-04-13 16:50:54

CC++內存

2011-06-21 11:16:24

cc++

2010-02-03 14:10:28

C++內存邏輯區域

2009-11-06 17:10:34

ChromeFirefox功能對比

2010-09-14 13:10:36

2010-07-19 09:01:54

.NET 4.0緩存

2013-03-22 13:31:52

App制作工具非編程

2009-03-16 12:10:02

Windows 7微軟對比

2015-07-13 10:07:43

Java.NET

2025-02-14 10:16:15

2017-06-06 09:56:03

hypervisor成本功能

2010-04-26 13:48:17

iPhone OSiOSWindows Pho

2010-02-02 09:43:27

C++存儲區域

2023-09-14 22:57:52

2011-03-08 11:14:35

IE7、IE8、IE

2012-07-18 10:41:35

語音功能

2019-10-29 09:14:52

ETL架構DataPipelin

2010-02-05 18:09:28

C++ Doxygen

2011-04-11 09:47:50

C++內存管理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 这里只有精品999 | 日韩成人影院 | 老外几下就让我高潮了 | 国外成人在线视频 | 国产一区二区三区网站 | 可以在线观看av的网站 | 女同久久另类99精品国产 | 99精品电影| 亚洲欧洲精品一区 | 中文字幕精品一区二区三区精品 | 一区二区在线不卡 | 18成人在线观看 | 97视频在线观看网站 | 孰女乱色一区二区三区 | 91免费在线视频 | 成人午夜免费福利视频 | 韩日在线视频 | 免费一级黄色录像 | 亚洲另类春色偷拍在线观看 | 九九99九九精彩46 | 一级免费毛片 | 亚洲一区二区三区四区五区午夜 | 欧美精品在线一区二区三区 | 人人人人人爽 | 免费欧美| 九九在线视频 | 久久久国产精品入口麻豆 | 国产精品久久久久久久免费大片 | 国产精品欧美一区二区三区不卡 | 日日噜| 九九免费| www.av7788.com| 成人精品一区二区三区中文字幕 | 日韩精品免费一区二区在线观看 | 三级在线免费 | 福利在线看 | 一级毛片在线看 | 7777在线| 欧美激情视频网站 | 水蜜桃久久夜色精品一区 | 欧美黄色绿像 |