C++中的内存分配有哪几种方式?

在栈上分配:在执行函数时,局部变量的内存都可以在栈上分配,函数结束时会自动释放;栈内存的分配运算内置于处理器的指令集中,效率很高,但分配的内存容量有限;

从堆上分配:由new分配/delete释放的内存块,也称为动态内存分配,程序员自行申请和释放内存,使用灵活;

从自由存储区分配:由malloc分配/free释放的内存块,与堆类似;

从常量存储区分配:特殊的存储区,存放的是常量,不可修改;

从全局/静态存储区分配:编译期间分配内存,整个程序运行期间都存在,如全局变量、静态变量等。

点击此处
隐藏目录