如果我继续调用此方法,会发生什么? (请不要评论代码,这只是一个思考的例子。)
-(NSMutableArray*)searchForItemsWithString:(NSString *)searchString
{
NSString *baseUrl = @"http://www.myService.com/";
NSURL *tempUrl = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@",baseUrl, searchString]];
NSMutableArray *tempResultArray = [[NSMutableArray alloc ] initWithContentsOfURL:tempUrl];
return tempResultArray;
}
tempResultArray
会不断增加引用次数,还是ARC会在tempResultArray
返回后执行魔术并释放它?
答案 0 :(得分:1)
ARC 将 可能(请参阅评论)在autorelease
之前对其进行tempResultArray
调用。之后会发生什么事情取决于你的程序的其余部分。下次调用此方法时,将创建一个新的tempResultArray
并重复该过程。