重新认识ARC

虽然用了很久的ARC,感受了代码简洁。但是对ARC底层实现并不了解。

今天抽空研究了下,做些简单地总结。

一、__strong

1.局部变量

①.对于局部变量来说,在超出作用域的地方由编译器自动插入release。

{

id__strong objc = [NSObject new];

}

==>>  (大概转化为)

{

id objc =objc_msgSend(objc_getClass("NSObject"),@selector(new));

objc_release(objc);

}

②.在非ARC返回的autorelease类型的方法

{

id__strong objc = [NSMutableArray array];

}

==> (在Blog手码大概代码,如有错误还望指出)

{

id objc =

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值