Objective-C块是否捕获属性值或对象值?

时间:2012-10-18 16:26:03

标签: objective-c objective-c-blocks

假设我有一个具有属性anInstance的类的实例aProperty。当我在块中使用anInstance.aProperty时,块是否捕获anInstance的(指针)值,然后将aProperty消息发送到捕获的(指针)值,或者仅阻止块捕获anInstance.aProperty的价值?

1 个答案:

答案 0 :(得分:6)

该块将在此处捕获anInstance。请记住,属性访问只是消息发送。

如果您将其视为[anInstance aProperty],则可能更为明显。但需要注意的是,anInstance->someIvar仍然会捕获anInstance而不是iVar。