C++在delete指针后要赋值为NULL
2016-09-01 13:36
726 查看
C++标准规定:delete空指针是合法的,没有副作用。
所以我们在Delete指针后赋值为NULL或0是个好习惯。对一个非空指针delete后,若没有赋NULL,若再次delete的话
有可能出现问题。如下代码:
可以看出delete是释放指针指向的内存,并不是指针本身所占有的内存。所以delete后,指针的还是指向那块区域,并
未清0,所以如果下次用到,就会发生xxx空间不能访问的异常。
以后delete后要赋值为空
所以我们在Delete指针后赋值为NULL或0是个好习惯。对一个非空指针delete后,若没有赋NULL,若再次delete的话
有可能出现问题。如下代码:
可以看出delete是释放指针指向的内存,并不是指针本身所占有的内存。所以delete后,指针的还是指向那块区域,并
未清0,所以如果下次用到,就会发生xxx空间不能访问的异常。
以后delete后要赋值为空
相关文章推荐
- 你所不知道的事儿--C++中delete指针后最好赋值为NULL
- 你所不知道的事儿--C++中delete指针后最好赋值为NULL
- 你所不知道的事儿--C++中delete指针后最好赋值为NULL
- delete指针之后应该赋值NULL
- 堆分配的内存全局可以用(只要不delete,且指针赋值NULL)
- C++在delete指针之后是否要置为null
- delete指针后应该将指针赋值为NULL
- delete指针以后应赋值为NULL
- 指针被delete之后应该赋值NULL
- delete指针之后应该赋值NULL
- delete指针以后应赋值为NULL
- 当C++指向对象的指针被赋值为NULL,对象那些函数可以运行?
- delete指针以后应赋值为NULL——QT deletelater指针以后也同样要马上赋值为NULL
- delete指针之后应该赋值NULL
- 当C++指向对象的指针被赋值为NULL,对象那些函数可以运行?
- delete指针之后应该赋值NULL
- c/c++中delete/free 指针后,设置p=NULL的好处
- VC++ delete指针后要赋值为NULL的原因
- delete指针之后应该赋值NULL
- 在C++动态库中释放调用动态库程序中生成的指针new和delete 或 malloc和free