A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小龙女的萝卜 中级黑马   /  2015-5-23 10:24  /  806 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Person *p = [ [Person alloc] init]


[p release];
p = nil;
每次进行完 release 操作后,都要把当前指针清空吗?每次都要写p = nil吗?

2 个回复

倒序浏览
不需要,可以写可以不写。
回复 使用道具 举报
不需要,除非不在使用这个对象。
p ----> Person的实例
如上,release是对实例对象的引用计数-1,p是指向对象的指针变量。
如果不再使用该实例,可以p = nil;,p将会变成空指针,箭头消失,实例对象也不能再使用。
一般像这样 p = nil;只是为了避免实例对象释放后再使用指针变量 p造成野指针错误。
我也是菜鸟,应该是这样。
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马