【发布时间】:2012-12-24 05:36:22
【问题描述】:
[self.foo setBlock:^{
[self doSomething]; // causes warning
}];
对
[self.foo setBlock:^{
self.bar = baz; // does not cause warning
}];
警告“在此块中强烈捕获 self 可能会导致保留周期。”
两者都不会导致强引用吗?
【问题讨论】:
-
如果将第二个示例更改为
[self setBar:baz];,您会收到警告吗? -
是的,如果我通过该语法设置属性,那么我会这样做。
-
编译器错误。可能会在以后的版本中修复。
-
我明白了。这是 xcode 4.5 FWIW。
-
很奇怪。
self.bar = baz和[self setBar:baz]应该是相同的:/
标签: ios objective-c memory memory-management automatic-ref-counting