stack stack 由操作系统分配释放,用于存放函数值、局部变量等。操作方式类似于数据结构中的 stack(先入后出) heap 堆,由程序员释放。若程序员不释放,则程序结束时由OS回收(内部机制用到链表数据结构) malloc、free 是C中的函数。需要引用#include<stdlib.h>, 只负责分配和释放内存。 new、delete 是C++中的操作符,不需要引入头文件。 new:首先分配内存;再调用类的构造函数;