博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MRC
阅读量:4677 次
发布时间:2019-06-09

本文共 776 字,大约阅读时间需要 2 分钟。

 MRC

关于NSString,retainCount为-1

C方法中含有Copy的方法名, 都要释放 例如CFRealse(ref)

 字符串常量,因为one

为字符串常量,系统不会回收,也不会对其作引用计数,即使我们对test1

  做任何retain或release

 

NSObject *obj = [[NSObject alloc] init];

ojb 的 引用计数为 1 (默认,相当于retain)

[obj retain];    引用计数+1

[obj release];    引用计数-1

[obj autorelease];  NSRunLoop运行完毕之后引用计数就会自动-1

对于对象属性

 

@interface MRCObject ()

@property (nonatomic, strong) MyObject *myObj;

@end

在没有被赋值时, 引用计数为0

如果是:self.myObj = [[MyObject alloc] init];

在这一句之后对象的引用计数为2 

如果是:self.myObj = [[[MyObject alloc] init] retain];

在这一句之后对象引用计数为3

相当于:

MyObject *obj = [[MyObject alloc] init];  //+1

self.myObj = obj; // + 1

[self.myObj retain];// +1    共3

 

// MRC setter- (void)setName:(NSString *)name{     [_name release];      _name = [name retain]; }

 

转载于:https://www.cnblogs.com/apem/p/4587682.html

你可能感兴趣的文章
vue使用video.js解决m3u8视频播放格式
查看>>
Ubuntu下配置使用maven
查看>>
常用sql语句
查看>>
13.无名管道通讯编程
查看>>
Kendo UI grid 表格数据更新
查看>>
js获取页面宽度给JS div设宽度
查看>>
如何恢复IIS出厂默认设置
查看>>
17.11.09
查看>>
在浏览器里友好的变量输出查看函数方法
查看>>
Excel中复杂跨行跨列数据
查看>>
day26
查看>>
房子过户给子女哪种方式最合适?买卖?赠与?继承?不看就亏大了!
查看>>
WinForm 生产环境、测试环境 多配置-App.config(分享)
查看>>
Java Garbage Collection基础详解------Java 垃圾回收机制技术详解
查看>>
SQL 中的函数
查看>>
Wiggle Subsequence
查看>>
Pandas详解一
查看>>
13. 星际争霸之php设计模式--正面模式
查看>>
数学之美番外篇:平凡而又神奇的贝叶斯方法
查看>>
设计模式03-工厂方法
查看>>