copy
ARC中关键字的作用是什么
我发现copy
(关键字)可以在 ARC 中使用,而retain
不能release
使用。此外,ARC中的角色与MRCcopy
中的角色相同吗?copy
如果是,是否copy
会retainCount
在 ARC 中 +1?
我看过关于 ARCHe 的 mike ash 博客说:
您需要显式复制您作为 id 参数传递的块:
[myArray addObject: [^{ DoSomethingMagical(); } copy]];
但是当我测试这样的代码(不使用copy
)时,它也运行良好。
NSArray *array = [[NSArray alloc] initWithObjects:^{NSLog(@"hahaha");}, nil];
[self test:[array objectAtIndex:0]];
- (void)test:(void (^)(void))completion
{
completion();
}
copy
是不是表示作为类型使用时不需要阻塞id
?