例如,
- (void) method
{
NSString *string = @"This is a string.";
}
我需要添加
吗?string = nil;
在方法结束时让ARC释放它?
非文字对象的情况可能有所不同,例如
- (void) method
{
NSData *data = [[NSData alloc] init];
}
我是否需要在最后添加
data = nil;
发布它?
答案 0 :(得分:3)
你不需要把它弄掉,但ARC也没有释放它。由于它是文字的,因此它会在应用程序的二进制文件中静态分配。它从未被释放。
- (void)method {
NSString *string = @"I'm never released because I'm statically allocated";
NSString *arcReleasesMeAfterMyLastSourceRef = [NSString stringWithString:string];
}