C++内存分配的方式
作者:hugang的博客 字体:[增加 减小] 来源:互联网 时间:2017-09-13
hugang的博客通过本文主要向大家介绍了C++内存分配的方式等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
C++内存分配的方式有3种:
1.从静态存储区分配,程序在编译的时候就已经分配好了,并且在整个运行期间都存在,比如静态变量和全局变量。
ps:实际上静态变量和全局变量你如果不初始化,系统会自动帮你初始化为0。
2.在栈上创建,函数参数和内部的非静态局部变量(包括数组),以及一些函数返回值;其开辟和释放都是由操作
系统帮我们完成,在VS下我们可以在项目》属性》链接器》系统》堆栈保留大小中设置,单位是 字节
3.在堆上分配,也称为动态内存分配。在程序运行时用malloc和new分配,必须有我们手动用free和delete回收,
否则就会出现内存泄漏!避免内存泄漏的方式就是用RAII机制,可以将其封装为一个类,在对象出了作用域时就会
调用析构函数并释放内存;在堆上分配的内存方便我们灵活的运用内存,但是也极易出现内存泄漏等恶劣影响,所
以我们要谨慎使用它。