首页 > 代码库 > 手工引用计数中规则
手工引用计数中规则
使用设值方法为属性赋值时 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不会影响对象的引用计数。
手工引用计数中规则
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。