malloc_free_new_delete

malloc, free    是c的库函数,只会分配内存大小,不会调用构造函数,析构函数

new, delete    C++关键字,操作符,不仅可以分配内存大小,还可以调用构造函数,析构函数

在执行基本类型,数组(其中存储的是基本类型)操作时,可以混用!

int *p = new int;

p = 1;

delete p;

或者

int *p = new int (1);  //不仅分配内存大小,还可以调用类的初始化函数进行初始化

数组:

int *p = new int[10];

p[0] = 1;

delete [] p;

当操作 类 时,有所不同:

malloc, free    是c的库函数,只会分配内存大小,不会调用构造函数,析构函数

new, delete    C++关键字,操作符,不仅可以分配内存大小,还可以调用构造函数,析构函数

posted @ 2016-07-13 22:46  Lunais  阅读(158)  评论(0编辑  收藏  举报