三种内存分配的方式: 从静态存储区分配:在编译的时候分配好,在程序的整个生命周期都存在,比如全局变量, static变量 在栈上创建:执行函数的时候,函数的内部存储变量可以在栈上创建,函数结束之后将被释放. 从动态内存上分配: 有两块,一块是堆,一块是自由存储区,new/malloc 分别分配动态对象到这两块区域,程序员自行决定什么时候释放,使用灵活.