通过阅读ARC 时代的 Property vs. ivar,我了解到__strong当我直接获取或设置strong属性的自动合成关联实例变量但既不会调用自定义 getter 或 setter 也不会触发 KVO 时,ARC 将使用所有权限定符。
但是,如果我这样声明一个属性weak:
@property (weak, nonatomic) id <XYZExampleViewDelegate> delegate;
自动合成的关联实例变量会采用
__weak所有权限定符吗?例如,将
_delegate = delegate(vsself.delegate = delegate) 在我的实现中- (id)initWithDelegate:(id <XYZExampleViewDelegate>)delegate根据
__weak资格执行任务?对于用 声明的属性
copy呢?