C++内存分配机制

本文探讨了C++中的5个存储区,重点分析了栈和堆的区别。通过示例代码和汇编语言,展示了栈上局部变量、动态内存分配以及类对象在内存中的创建和释放过程,强调了理解内存分配对于C++编程的重要性。
摘要由CSDN通过智能技术生成

首先,来谈谈C++的5个存储区:

1.栈:是分配给函数局部变量的存储单元,函数结束后,该变量的存储单元自动释放,效率高,分配的空间有限。

2.堆:由new创建,由delete释放的动态内存单元。如果用户不释放该内存,程序结束时,系统会自动回收。

3.自由存储区:由malloc创建,由free释放的动态内存单元,与堆类似。

4.全局(静态)存储去:全局变量和静态变量占一块内存空间。

5.常量存储区:存储常量,内容不允许更改。

本文主要是来讨论栈和堆的区别,以及深入到C++汇编中来研究。先声明一下,以下的汇编都只是节选主程序的一块。

在linux下,编辑程序aaa.cpp,vim aaa.cpp


然后退出保存

<

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值