属性weak的使用疑惑

@property (nonatomic,weak)    id interactor;

疑惑:当set方法设为weak时,给interactor赋值完是不是就释放了?

遵守某协议的属性对象,当set方法设置为weak时,属性(interactor)所指向的对象只要有其他指针引用着,就不会被释放。interactor其指针保存着正确的对象地址。而interactor所指向的对象实例只有没有任何其他指针引用时才会被释放。

当interactor指向的对象没有其他引用时,就应该使用strong修饰。因为如果使用weak,实例对象赋值完就会释放。interactor也将赋值为nil。

你可能感兴趣的:(属性weak的使用疑惑)