@""与[NSString字符串]

Rob*_*oll 6 objective-c

我试图找出利弊的利弊@"",并[NSString string]为它们出现在类似的方式表现.我想我希望[NSString string]返回一个静态值,从而避免在内存中创建不必要的字符串.任何人都可以解释一下,因为文件是不确定的.

zou*_*oul 5

这很有可能,@"" == [NSString string]因此决定只是风格问题.啊哈,不是:

NSLog(@"%i", @"" == @""); // 1
NSLog(@"%i", [NSString string] == [NSString string]); // 1
NSLog(@"%i", [[NSString string] stringByAppendingString:@"foo"] ==
             [@"" stringByAppendingString:@"foo"]); // 1
NSLog(@"%i", @"" == [NSString string]); // 0
Run Code Online (Sandbox Code Playgroud)

但我想不出任何差异很重要的用例.