C++:28 --- C++内存布局(上)
生活随笔
收集整理的這篇文章主要介紹了
C++:28 --- C++内存布局(上)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
了解你所使用的編程語言究竟是如何實現的,對于C++程序員可能特別有意義。
首先,我們順次考察C兼容的結構(struct)的布局,單繼承,多重繼承,以及虛繼承;
接著,我們講成員變量和成員函數的訪問,當然,這里面包含虛函數的情況;
再接下來,我們考察構造函數,析構函數,以及特殊的賦值操作符成員函數是如何工作的,數組是如何動態構造和銷毀的;
操作系統為一個C++程序的運行所分配的內存分為四個區域,如圖4.3 程序在內存中的區域所示:
(1)代碼區(Code area):存放程序代碼,即程序中各個函數的代碼塊;
(2)全局數據區(Data area):存放全局數據和靜態數據;分配該區時內存全部清零。
(3)棧區(Stack area):存放局部變量,如函數中的變量等&
總結
以上是生活随笔為你收集整理的C++:28 --- C++内存布局(上)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: lua __index __newind
- 下一篇: C++:17---函数指针