所以我今天在一次采访中被问到这个问题,经过一番谷歌搜索后我仍然无法找出答案(事实上我什至找不到任何使用 [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.
有人可以向我解释一下这两者之间的区别是什么吗?