动态内存分配的常见函数和运算符

动态内存分配的常见函数和运算符

函数: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。

你可能感兴趣的:(C++)