runtime中动态关联对象的作用

2017-03-02  本文已影响0人  Ryan_RH

分类只能给已有的类添加方法,但是不能直接增加实例变量,如果写上默认的getter和setter方法也是编译不通过的,这时候就可以在getter和setter中用动态关联对象的方法来写:

//set function

void objc_setAssociatedObject(id object, const void *key, id value, objc_AssociationPolicy policy);

//get function

id objc_getAssociatedObject(id object, const void*key);

这样就可以给已有的类添加属性了。

上一篇下一篇

猜你喜欢

热点阅读