美文网首页
C++学习笔记

C++学习笔记

作者: 非典型程序猿 | 来源:发表于2021-06-12 14:46 被阅读0次

    内存分区模型

    • 代码区
      存放我们所有编写的代码
    • 全局区
      存放全局变量,静态变量以及常量
    • 栈区
      由编译器自动分配释放,存放函数的参数值,局部变量等
    • 堆区
      由程序员分配和释放,程序结束时会自动回收未被释放的内存

    代码区

    该分区存放了代码转换而成的2进制cpu指令,且程序运行前即分配好,特点是共享且只可读

    全局区

    该分区同代码区一样,也在程序运行前就分配好,存放了全局变量和静态变量(可能是全局的,也可能是局部的),和常量区,常见的常量可由define或const声明,它最终会随着程序的运行结束而被释放掉

    栈区

    该分区由编译器自动分配释放,主要存放函数的参数值,局部变量等等,要注意不能返回局部变量的地址,因为栈区开辟的内存会随着程序运行编译器自动回收

    堆区

    该分区由程序员申请和释放,这里会使用到new和delete关键字,new可以申请内存空间,delete可以释放空间,注意点是程序运行结束时会自动回收已经申请的内存。

    相关文章

      网友评论

          本文标题:C++学习笔记

          本文链接:https://www.haomeiwen.com/subject/coqieltx.html