gpt4 book ai didi

objective-c - 使用 objc_setAssociatedObject 将 ivars 添加到类别

转载 作者:行者123 更新时间:2023-12-03 17:40:46 25 4
gpt4 key购买 nike

我计划使用 objc_setAssociatedObject()iVars 添加到类别中。但是,我不确定何时调用 objc_removeAssociatedObjects() 来删除它们。

有没有办法让类别知道使用它的对象何时被取消分配

最佳答案

如果您设置了关联

objc_setAssociatedObject(self, &key, otherObject, OBJC_ASSOCIATION_RETAIN);
// or OBJC_ASSOCIATION_RETAIN_NONATOMIC

然后otherObjectself时自动释放被解除分配。 (至少如果你使用 ARC,但我认为这对于手动引用计数也是正确的。)

所以你不必打电话objc_removeAssociatedObjects()明确地,除非你想得到在释放主对象之前删除添加的对象。

关于objective-c - 使用 objc_setAssociatedObject 将 ivars 添加到类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15898330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com