【问题标题】:NSString retain count in Objective-C [duplicate]Objective-C中的NSString保留计数[重复]
【发布时间】:2013-02-18 02:22:30
【问题描述】:
NSString* nsString=[[NSString alloc]initWithString:@"nsString"];
NSLog(@"nsString RetainCount:%li",[nsString retainCount]);

对应的结果是:

 2013-03-04 11:18:03.291 ARC[655:303] nsString RetainCount:-1 

此外: 如果使用初始化 NSMutableString 实例; 它返回 1;

【问题讨论】:

  • 那么你的问题是什么?

标签: objective-c nsstring retaincount


【解决方案1】:

http://whentouseretaincount.com

在编译时生成的不可变NSStrings 是单例。因此,他们根本不跳retain/release 舞蹈。

NSString 检测到它何时被初始化并直接返回字符串。您会发现该代码中alloc 返回的对象与init... 调用返回的对象不同。

【讨论】:

  • 感谢@regexident 清理格式!
猜你喜欢
  • 2023-04-08
  • 2010-11-25
  • 2015-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
  • 1970-01-01
相关资源
最近更新 更多