C++中的动态内存分配

动态内存分配,能够有效的利用内存空间。

一.使用new分配内存

例:int * ptr = new int;

ptr指针指向了一个新的内存空间

int * nums =  new int[5];
分配了一个动态的数组空间,nums指针指向了第一个元素的地址。

二.使用delete释放内存

* 与new配对使用,

例:

int * ptr_int = new int;
short * ptr_short = new short[5oo];
delete ptr_int;
delete [] ptr_short

如下:delete ptr;

             delete [] nums;   注意释放动态的数组空间时,需要加一个[]。

* 不能释放已经释放的内存。

* 不能释放声明变量分配的内存。

三.注意事项

1.不要创建两个指向同一内存块的指针,有可能误删两次。

2.不要使用delete释放不是new分配的内存。

3.如果使用new[]为数组分配内存,则应对应delete[]释放内存。

4.对空指针使用delete是安全的。

posted @ 2020-06-29 14:54  拼命的骡子  阅读(769)  评论(0编辑  收藏  举报