【发布时间】:2011-10-26 08:42:07
【问题描述】:
所以我今天在一次采访中被问到这个问题,经过一些谷歌搜索后仍然无法找出答案(事实上我什至找不到任何使用 [NSString string] 方法的代码)。
有什么区别
NSString *someString = [NSString string];NSString *someString = [[NSString alloc] init];
现在我最初的想法是[NSString string] 将返回一个自动释放的对象,而使用 alloc 和 init 将返回一个已保留的对象。然而,这个答案似乎是不正确的。
我查看了苹果文档中的 NSString 类参考,但它所说的只是
Returns an empty string.
+ (id)string
Return Value
An empty string.
谁能给我解释一下这两者之间的区别是什么?
【问题讨论】:
-
如果这是你没有得到这份工作的唯一原因,这似乎有点不公平。
-
在 iOS5(带有 ARC)中它们是相同的东西。
-
@jrturton 这只是我被问到的众多问题之一,我认为这不是我是否继续通过这个面试阶段的唯一原因
标签: iphone objective-c ios nsstring class-cluster