oc-arc(Automatic Reference Counting 自动引用机制) 与 内存管理

内存管理范围:任何继承了NSObject的对象,对基本数据类型无效。

基本数据类型(int,long,float,double,Bool,char)

新建的对象(alloc,new,copy) 会在堆内存中开辟一块空间,因此需要对对象进行内存管理。

 

对象的基本机构:

如果工程没有关闭ARC功能,无法调用retainCount方法;

 

dealloc 方法:当对象的引用计数器=0时就会调用dealloc方法;

 

retain 方法返回的调用对象本身,引用计数器加1
[p retain];
 
野指针:指向僵尸对象(不可用内存)的指针;
例如,堆中对象的引用计数器=0了,对象占用的内存空间就会被系统自动回收,如果对象指针依旧指向未回收前的内存空间时,就是野指针。
oc中,不存在空指针报错,
空指针调用对象方法 代码可以执行;
 
 
对象死,不能复生:对象release引用计数器等于0后,对象变成僵尸对象,此时再次执行[p retain],会报野指针错误。所谓对象死,不可复生。
 
总结:

 

转载于:https://www.cnblogs.com/My-Cloud/p/4500272.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值