NSMutableString *str;
//我已经完成了分配等
假设这个str
有一些价值。
我设置str=@""
它显示warning
。如何将NSMutableString设置为Null?
答案 0 :(得分:2)
str = nil
怎么样?
您还应首先[str release]
以释放当前字符串使用的内存。
答案 1 :(得分:1)
如果您只想将其设置为空字符串,请执行以下操作:
NSMutableString * str;
//追加一些字符串 // ...
[str setString:@“”];
否则,如果要释放它并将其设置为null:
[str release],str = nil;
注意:像@“”这样的常量字符串使用特殊字符串引用。你可以进一步研究它,但它实际上并没有每次都分配一个新的字符串。
答案 2 :(得分:0)
您可以使用str = nil;
但在几乎所有情况下,我可能会建议您使用NSString
代替NSMutableString
。当您分配str变量@“”时,即实例化一个新的空字符串(NSString
),并将其分配给str,因此类型错误。
使用[NSString stringByAppendingString:@" new string content"]
或[NSString stringByAppendingFormat:@"%@ stuff %@", otherString1, otherString2]
等内容从旧字符串创建新字符串几乎总是更容易。