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

Isa*_*aac 2 objective-c objective-c-blocks

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

Jos*_*erg 6

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

如果你考虑[anInstance aProperty]它可能会更明显.但要注意,anInstance->someIvar仍然捕获anInstance而不是iVar.