分類に属性を追加できるRuntime関連オブジェクト
1143 ワード
分類に属性を追加できるRuntime関連オブジェクト
関連APIは以下の通りである関連値 を設定する.関連値 を取得する.関連付けを解除
関連ポリシー
関連APIは以下の通りである
/*
object: , self
key: , , static const void *
value:
policy: , copy9
*/
void objc_setAssociatedObje
ct(id object, const void *key, id value, objc _AssociationPolicy policy)
// :
// objc_setAssociatedObject(self, @selector(name), name, OBJC_ASSOCIATION_COPY_NONATOMIC);
/*
object: , self,
key: ,
*/
id objc_getAssociatedObject(id object, const void *key)
// :
// objc_getAssociatedObject(self,@selector(name))
void objc_removeAssociatedObjects(id object)
関連ポリシー
typedef OBJC_ENUM(uintptr_t, objc_AssociationPolicy){
OBJC_ASSOCIATION_ASSIGN = 0, // ,
OBJC_ASSOCIATION_RETAIN_NONATOMIC = 1, // ,
OBJC_ASSOCIATION_COPY_NONATOMIC = 3, // copy,
OBJC_ASSOCIATION_RETAIN = 01401, // ,
OBJC_ASSOCIATION_COPY = 01403 // copy,
};