为了账号安全,请及时绑定邮箱和手机立即绑定

p=NULL的疑惑

为啥在释放内存delete的时候使用的是delete []p;但是在对p赋空的时候,却不是使用p[0] = NULL;p[1]=NULL;p[2]=NULL;而是直接 p = NULL;就行了呢?

正在回答

2 回答

嗯,是的。希望课程对你有帮助。

0 回复 有任何疑惑可以回复我~

怎么说呢,p是一个指针,p[1],p[2]都是通过这个向后指针找到的。delete []p后,p[0]p[1]p[2]内容都删除了,但是p指针还在,所以通过置p=NULL防止别的地方用到。也就是说三个元素的数组是可以通过首地址指针p来实现各种操作的,可以当作本没有什么p[1],p[2]指针,而且p[1]p[2]根本就不是指针!!有点乱。。。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70921    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

p=NULL的疑惑

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信