动态内存分配的常见函数和运算符
函数:C语言中文件stdlib.h中提供的系列函数
void * malloc(size_t)
void * calloc(size_t,size_t)
malloc不会进行初始化,释放calloc会初始化空间为0,所以在追求效率的时候,使用的malloc
void * realloc(void * p,size_t size)
realloc函数申请空间的步骤:
1,申请size大小个字节的空间
2,将p中的值拷贝到刚申请的空间中
3,释放p,返回刚申请的空间
运算符:new delete
int * pi = new int;
delete pi;
int * pi = new int [5];
delete [] pi;
※通过动态内存分配实例化对象的时候,new / delete会自动调用构造 / 析构函数,而malloc / free不会。所以在给类分配空间时,最好使用new / delete。