当一些这样的代码:
objc_setAssociatedObject (
obj,
&key,
val,
OBJC_ASSOCIATION_RETAIN
);
我需要打电话给相关的吗
objc_setAssociatedObject (
obj,
&key,
nil,
OBJC_ASSOCIATION_RETAIN
);
释放留存价值?Objective-C 运行时是否会自动在其中dealloc
或某处释放关联引用?
当一些这样的代码:
objc_setAssociatedObject (
obj,
&key,
val,
OBJC_ASSOCIATION_RETAIN
);
我需要打电话给相关的吗
objc_setAssociatedObject (
obj,
&key,
nil,
OBJC_ASSOCIATION_RETAIN
);
释放留存价值?Objective-C 运行时是否会自动在其中dealloc
或某处释放关联引用?
当父对象被释放时,关联的对象将被释放。请参阅此处的文档,特别是此示例:
在第 1 点,字符串
overview
仍然有效,因为OBJC_ASSOCIATION_RETAIN
策略指定数组保留关联的对象。然而,当数组被释放时(在第 2 点),数组被释放,overview
因此在这种情况下也被释放。