C++中的delete浅析

            最近用到了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”而带来的安全隐患。

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