首先, weak 是不能修饰非对象类型的!
assign是指针赋值,不对引用计数操作,使用之后如果没有置为nil,可能就会产生野指针;而weak一旦不进行使用后,永远不会使用了,就不会产生野指针!
接下来用简单的代码说明一下:
本文探讨了Objective-C中weak与assign的区别。weak不会导致野指针问题,并且当对象不再被引用时会自动设置为nil,而assign则可能导致野指针。通过简单示例代码进一步说明了两者的不同。
首先, weak 是不能修饰非对象类型的!
assign是指针赋值,不对引用计数操作,使用之后如果没有置为nil,可能就会产生野指针;而weak一旦不进行使用后,永远不会使用了,就不会产生野指针!
接下来用简单的代码说明一下:
635
537

被折叠的 条评论
为什么被折叠?