iOS 结构体中引用OC对象

ARC模式下, 在结构体中直接引用OC对象, 程序会报野指针的错误. 很明显, 引用的对象已经被释放了, 所以此时为了防止不被释放, 就需要对内存进行手动管理.

而手动管理内存, 自然就会想到MRC, 不过ARC时代, 再配置MRC就有点蛋疼了. 那还有什么方法呢? , CF对象派上用场了.

以下为代码示例:

iOS 结构体中引用OC对象_第1张图片
image.png

如上图, 将 testTask 转为了 CF对象, 对其 retain.
在需要使用时, 可以转换为相应的类型, 也可以直接使用CF对象操作.
最后不需要使用后, 将其释放.

你可能感兴趣的:(iOS 结构体中引用OC对象)