是什么在委托财产申报“弱”和“分配”之间的区别是什么在委托财产申报“弱”和“分配”之间的区别(Wha

2019-05-13 10:23发布

请告诉我这之间的区别:

@property (nonatomic, weak) id  <SubClassDelegate> delegate; 

还有这个:

@property (nonatomic, assign) id  <SubClassDelegate> delegate; 

我想用财产为代表。

Answer 1:

之间的唯一区别weakassign是,如果该对象的weak属性指向被释放,那么,价值weak指针将被设为nil ,让你永远不会运行访问垃圾的危险。 如果您使用assign ,这不会发生,因此,如果对象被从下你释放你尝试访问它,您会进入垃圾。

对于Objective-C的对象,如果你在一个环境中,你可以用很weak ,那么你应该使用它。



文章来源: What's the difference between 'weak' and 'assign' in delegate property declaration