对变量release与nil的理解

假如 有一个变量P
1。当[P release]时,只是会对P的retain值减1,如果当P为1时,再[P release] ,那么就会释放掉P所指向的内存空间
2.当P=nil,是指将P置为空指针,如果P的retain此时不为0,那么P所指向的内存空间并不会随着P=nil而被释放,(如果P所指向的内存空间在P=nil后并未被再次使用,那么就会造成内存泄露)
3。当[P release]后retain为0时,a:若P此时不为空指针,即不等于0x00000000,在其后再调用了指针P,那么就会产生EXC_BAD_ACCESS错误;b:若P此时为空指针,即等于0x00000000,则调用不会出错。

4.nil是一个特殊的对象,可以向其发送消息而不会出错

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值