【发布时间】:2013-03-14 14:24:28
【问题描述】:
类对象使用objc_setAssociatedObject是否正确?
我们经常使用这样的静态变量来模拟类变量: Objective C Static Class Level variables 但是,我们可以使用 Associated 对象作为替代吗?
objc_setAssociatedObject([self class], &STRING_KEY, myString, OBJC_ASSOCIATION_RETAIN);
【问题讨论】:
-
是的,但是对于那些将维护您的代码的人来说,这将更难理解。当您需要添加动态组件数据但您不知道在编译时添加的确切类型的数据/名称时,您应该使用 objc_setAssociatedObject。如果你在编译时就知道了,你仍然可以使用旧的全局技术;)
标签: ios objective-c class static static-variables