我刚刚克隆了 SBJson 框架的 git 存储库,并将源代码导入到我的应用程序中。运行一个静态内存分析器,我看到的结果有点害怕。看图片
这怎么可能?我怀疑这个非常知名的图书馆的开发者没有看到这个?事实上,如果运行内存配置文件,它会显示该库的内存泄漏。
有任何想法吗?谢谢
看起来您在未启用ARC的项目中使用 SBJSON。由于 ARC 消除了显式调用的需要release
,为 ARC 编写的代码(如 SBJSON)在用于非 ARC 项目时会导致内存泄漏。您应该将您的项目转换为使用内置重构工具的 ARC(编辑 > 重构 > 转换为 Objective-C ARC,然后-fno-objc-arc
在任何尚未准备好 ARC 的源上显式设置编译器标志。