C/C++内存管理
·
C/C++内存分布
1.1变量储存区域

1.2储存区域说明
栈又叫堆栈:非静态局部变量/函数参数/返回值等等,栈是向下增长的。 内存映射段:是高效的I/O映射方式,用于装载一个共享的动态内存库。用户可使用系统接口 创建共享共享内存,做进程间通信。 堆:用于程序运行时动态内存分配,堆是可以上增长的(向上增长)。 静态区(数据段):存储全局数据和静态数据。 常量区(代码段):可执行的代码/只读常量
2 C语言中动态内存管理方式:malloc/calloc/realloc/free
2.1malloc/calloc/realloc的使用与区别

3 C++内存管理方式
3.1C++内存管理:由于c语音中的动态开辟函数对于自定义类型并不适用, 使用起来比较麻烦(如果要初始化要自己写相应的函数),因此 C++ 又提出了自己的内存管理方式: 通过new和delete操作符进行动态内存管理。
3.2 new/delete操作内置/自定义类型:
3.2.1 new/delete操作内置类型:

3.2.2 new/delete操作自定义类型:

new/delete操作内置类型是自动调用构造函数和析构函数

3.3new/delete书写格式:【注意:申请和释放单个元素的空间,使用new和delete操作符,申请和释放连续的空间,使用 new[]和delete[],注意:匹配起来使用]
更多推荐
所有评论(0)