一. 概念:
1. 静态分配:
编译器在处理程序源代码时分配.
2. 动态分配:
程序执行时按动态要求分配.
※ (1). 静态分配效率高, 动态分配灵活性高.
(2). 静态对象都是有名字的变量, 我们直接对其操作, 而动态对象是没有名字的变量, 我们是用指针间接地对它进行操作.
(3). 静态对象的分配与释放由编译器进行处理, 动态对象必须由程序员显式的管理, 相对来说较易出错.
二. 分配动态内存函数:
1. C: 头文件: <stdlib.h> C++:无须头文件
释放: free() 释放: delete 分配: malloc() 分配: new
能直接释放, 如:free(p); 三种用法对应的释放方式: (1). int* p = new int ; 对应=> delete p ;