objective-c - CFRelease CFMutableArrayRef 内容的正确方法
问题描述
我在我的代码中使用 CFMutableArrayRef。在那里我添加了几个 CFTypeRef 元素。
当我使用完数组后,我需要CFArrayRemoveAllValues(myArray);
在实际释放数组之前调用还是简单地调用CFRelease(myArray);
也会释放数组内容?
提前致谢
解决方案
CFRelease
假设数组中包含的对象得到适当的管理,您需要做的就是调用。
CFArray
是开源的,您可以在https://opensource.apple.com/source/CF/CF-1153.18/CFArray.c.auto.html(查找__CFArrayDeallocate
和__CFArrayReleaseValues
)上自己查看实现。
CFArray
是免费桥接的,NSArray
因此在 Objective-C 中很少需要CFArray
直接使用。
推荐阅读
- flutter - 如何在我的 Flutter 应用中添加一些功能?
- symfony - Symfony 捆绑包 - 管理资产
- python - flake8:在整个项目中忽略 F841 未使用的双下划线 `__` 变量
- mysql - 如何将 MySQL 连接到 Kafka 集群
- html - 更改 DIV 标记内元素的顺序
- c++ - SQLite3 - 以函数参数为值
- r - 将 DiagrammeR 对象保存到光盘上的 PNG
- python - 如何隐藏 Windows 10 鼠标指针/光标?
- linux - 限制对已安装设备的访问 (Linux)
- prolog - Prolog 中的 Tupper 公式