美文网首页
iOS--关联对象

iOS--关联对象

作者: mayuee | 来源:发表于2021-06-13 22:26 被阅读0次

    添加关联对象
    objc_setAssociatedObject(id _Nonnull object, const void * _Nonnull key, id _Nullable value, objc_AssociationPolicy policy)

    获取关联对象
    objc_getAssociatedObject(id _Nonnull object, <const void * _Nonnull key)

    移除关联对象
    objc_removeAssociatedObjects(id _Nonnull object)

    当想要撤销或者删除一个已经关联到对象的值的时候,objc_setAssociatedObject中的value传nil也可以,因为当value=nil时是erase擦除操作。
    关联对象由AssociationsManager统一管理,所有对象的关联内容放在同一个全局容器哈希表 AssociationsHashMap 中。

    关联对象的原理

    相关文章

      网友评论

          本文标题:iOS--关联对象

          本文链接:https://www.haomeiwen.com/subject/xbeweltx.html