Objective-C声明NSMutableString
我想知道为什么我们可以这样声明NSString:Objective-C声明NSMutableString,objective-c,Objective C,我想知道为什么我们可以这样声明NSString: NSString *strongName = @"Kuba"; 但我们不能以相同的方式声明NSMutableString: NSMutableString *strongName2 = @"Kuba"; 相反,我必须使用旧的(?)方法: NSMutableString *strongName3 = [NSMutableString stringWithFormat:@&quo
NSString *strongName = @"Kuba";
但我们不能以相同的方式声明NSMutableString:
NSMutableString *strongName2 = @"Kuba";
相反,我必须使用旧的(?)方法:
NSMutableString *strongName3 = [NSMutableString stringWithFormat:@"Kuba"];
感谢您提供的有意义的见解:)
NSString*myString=@“Kuba”
仅是NSString
的缩写。如果您需要一个NSMutableString
,您可以从中获得一个可变副本:NSMutableString*myMutableString=[@“Kuba”mutableCopy]
,因为@“Kuba”
生成一个NSString
,所以它是不可变的。就是这样做的。旁注,您不使用格式,因此最好使用stringWithString:
。另外,请在lldb中查看po[strongName class]
vspo[strongName3 class]