c++为什么需要堆

使用new的意义是申请堆空间(heap)中的内存。
heap比起栈空间(stack)的优势在于容量巨大,通常一个程序的stack空间的大小都只有2m左右,具体数值取决于编译器。
使用heap需要手动释放内存,但是随时可以释放,使用stack必须等到生命周期结束才会释放内存。
对于生命周期短且占用空间小的变量,如函数中的局部变量,用stack。对于占用空间大的,采用heap。熟悉了C++之后自然就分得清什么时候该用什么。
比起stack,heap能有更大的容量,并且能更好地被程序员操纵

 

实际上用的时候能用栈先用栈,用不了在用堆,能用智能指针用智能指针,太容易忘了删除了

posted @   纸包鱼  阅读(173)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示