码迷,mamicode.com
首页 > 其他好文 > 详细

手工引用计数中规则

时间:2016-11-08 22:47:32      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:对象   release   sign   sig   nbsp   赋值   计数   发送   ase   

使用设值方法为属性赋值时 assign、retain、copy三个特性的实现

self.property = newValue;

assign的特性会是这样:

    property = newValue;

retain特性会是这样

    if (property!=0) {

        [property release];

        property = [newValue retain];

    }

   copy的特性会是这样

    if (property!=0) {

        [property release];

        property = [newValue copy];

    }

 果要保持一个对象不被销毁可以使用retain,使用完对象后需要用release进行释放。

对象发release消息后并不会释放这个对象,只有当对象的引用计数为0后才会被销毁。然后系统系统会给这个对象发送dealloc消息释放内存。

果方法中不需要使用一个对象,但这个对象确实一个返回值可以给这个对象发送autorelease消息用以标记这个对象延迟释放,autorelease不会影响对象的引用计数。

 

手工引用计数中规则

标签:对象   release   sign   sig   nbsp   赋值   计数   发送   ase   

原文地址:http://www.cnblogs.com/yfc-ios/p/6044774.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!