来自 .NET 背景,我习惯于重用字符串变量进行存储,那么下面的代码是否可能导致内存泄漏?该代码针对 iphone/itouch,因此没有自动 GC。
-(NSString*) stringExample
{
NSString *result = @"example";
result = [result stringByAppendingString:@" test"]; // where does "example" go?
return result;
}
让我感到困惑的是 NSStrings 是不可变的,但是您可以毫无问题地重用“不可变”变量。