不安全的,不安全的,弱的,并在ARC下分配?

时间:2013-02-03 04:22:26

标签: objective-c

  

可能重复:
  strong / weak / retain / unsafe_unretained / assign

在ARC下,unsafe_unretained和weak之间有什么区别? 非常感谢。

1 个答案:

答案 0 :(得分:0)

来自文档:

  

weak指定不使引用对象保持活动状态的引用。当没有强弱时,弱引用设置为nil   对象的引用。

Assignweak相同,只是它没有将指向解除分配的实例的指针设置为nil,可能会留下悬空指针。 Assignunsafe_unretained的使用方式相同。

编辑:哦,我的,似乎我大量混淆了属性属性和所有权限定符;我的原始答案是正确的答案。 Assignunsafe_unretained都是属性属性,暗示其支持实例变量的所有权限定符__unsafe_unretained。使用unsafe_unretained向后兼容iOS 4和assign