摘要:
* week修饰的对象实际上是实现了一种“非拥有关系”,为这种week修饰的属性设置新的值时,设置方法即不保留新的值,也不释放旧的值 这种属性与assign类似,当属性所指的对象被销毁的时候,属性值也会清空(nil) 不同的是,runtime会实现week变量的自动置空 当有week对象注册时,就会 阅读全文
摘要:
为什么用week而不用strong,原因是为了防止循环引用 如果用strong的话,假设在B中添加A类的delegate,B就会持有(强引用)A的对象,A的delegate会持有(强引用)B,就造成了循环引用。 例如在B中 用assign避免了这个问题, 因为assign是单纯的拷贝所赋值变量的值, 阅读全文