深刻理解C++内存管理机制

关于C++的内存处理,可分为三大块,分别是:linux

(一)内存管理机制  windows

(二)内存泄露处理函数

(三)内存回收机制布局

这篇文章将就(一)内存管理机制 进行深刻探讨,若有错误欢迎你们指正。spa

C++的内存管理也可细分为blog

1. 程序内存布局内存

2. 内存的分配方式作用域

3. 常见内存错误及对策it

----------------------------------------------------------------------------内存管理

一. 程序内存布局

查了相关资料,明白了一点: memory layout of C++/C program is mostly dependent on the Operating System

So it's an opening question !

即使如此,当清楚C++程序的内存布局后,咱们对变量的生存期、内存的管理,将会有更深入的认识。

 

下面先归纳介绍C++程序内存布局,再分别以windows和linux为示例。

1. C++程序内存布局

对于分段式内存而言,C++程序所涉及的内存区有:代码段、数据段、堆栈。(见图)

下面来依次分析C++程序中各个元素所对应的内存位置吧~

程序代码:存储在代码段,只读。

变量:

根据做用域,可分为:全局变量、局部变量

根据关键字,有:static静态变量、const常量

根据位置,有:类变量、函数形参

特殊变量:字面量

相关文章
相关标签/搜索