Obj-C:[NSString stringWithString:@"string"] vs. @"string"

ma1*_*w28 17 cocoa-touch objective-c nsstring ios stringwithstring

我见过人们做的事情[NSString stringWithString:@"some string"].为什么不@"some string"呢?

举个例子,看看facebook-ios-sdk.

+ [NSString stringWithString:] - 重点是什么?是一个类似的问题,但没有一个答案解决[NSString stringWithString:@"some string"]@"some string".

Sve*_*ven 8

实际上没有区别.[NSString stringWithString: str]什么都不做,str如果str已经是不可变的则返回.


Jer*_*myP 6

除了需要额外的击键之外没有区别.实际上,使用常量字符串作为参数(或不可变字符串),您只需获得另一个指向该参数的指针.

该方法的主要用途是在子类中:

[NSMutableString stringWithString: @"fdghdfjl"];
Run Code Online (Sandbox Code Playgroud)

会给你一个可变的自动释放的原件副本.