最近用到了delete用法,在此总结一下。
delete用于释放由new操作法创建的对象或对象数组的内存空间,有两种基本语法:1)delete ;2)delete[];
1)delete用法
e.g: class animal
{
...
};
animal tiger = new animal();//创建单个对象
...
delete teger;
可以看出delete用于释放单个对象的存储空间‘
2)delete[] 用法
e.g:class animal
{
...
};
animal *tiger =new animal[];
...
delete [] tiger;
可以看出delete 用于释放对象数组的存储空间,但注意只是释放指针tiger指向的存储空间,但并没有销毁指针本身,且使用“delete [] tiger”之前保证tiger不是“野指针”,可以将在“ delete [] tiger ” 之后将tiger赋为null,即
“ tiger = null”,避免重复使用“delete [] tiger”而带来的安全隐患。