NSString 引用计数 负1

**_NSString *str = [[NSString alloc]init];
NSString *str7 = [[NSString alloc]initWithString:@"aaa"] //retainCount = -1
NSString *str8 = [[NSString alloc]initWithFormat:@"aaa"]; //retainCount = -1
NSString *str9 = [[NSString alloc]initWithFormat:@"a%s","aa"];//retainCount = -1
NSString *str4 = [NSString stringWithFormat:@"aaa"]; // -1

NSString str10 = [[NSString alloc]initWithFormat:@"啊"]; //retainCount = 1
NSlog(@"%d",str);
为什么中文的时候计数为1 英文时 alloc开辟空间为什么不计数

1个回答

字符串在 OC 中系统对其有特殊的处理方式,并不使用 retain 和 release 方法管理内存
稍微详细一点的解释,可以参见我的博客
http://blog.csdn.net/aa603020460/article/details/49827287

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问