weak和assign的区别

2016-07-21  本文已影响34人  yemingsha

1.weak 此特质表明该属性定义了一种“非拥有关系” (nonowning relationship)。为这种属性设置新值时,设置方法既不保留新值,也不释放旧值。此特质同assign类似, 然而在属性所指的对象遭到摧毁时,属性值也会清空(nil out)。 而 assign 的“设置方法”只会执行针对“纯量类型” (scalar type,例如 CGFloat 或 NSlnteger 等)的简单赋值操作。

2.assigin 可以用非 OC 对象,而 weak 必须用于 OC 对象

上一篇下一篇

猜你喜欢

热点阅读