-
Clang静态分析和Instruments来剖析代码有一些不同,Clang更致力于在编译的过程中通过自身的一套判断机制来找出代码中潜在的隐患。
在XCode 3.2之后的版本里,Clang已经被集成进来,Static Analysis 是基于 Clang 的非常好的静态代码分析工具。可以从xcode直接运行Static Analysis 分析器。Static Analysis 优点:1、使用操作容易。2、能够在编码阶段,开发自行进行代码检查。早期发现代码隐患。3、直接分析源代码来发现程序中的错误,而不需要实际运行。4、自动检测objective-C程序中的BUG,发现内存泄露和其它问题。5、内存问题发现越早,解决的代价就越小。使用方法:1、确保你的程序没有被编译过(编译过了就使用Clean all targets清除编译)2、点击Product > Analyze如下图:
3、如果你的程序代码有问题,在编译完成之后,右下角的原来提示warning 和 error的地方现在变成了这样:4、现在你可以像解决以前的warning 或者 error一样,对提示的地方点进去。5、可能会存在问题的一些情况:各处内存泄漏:
对象引用隐患(内存已释放可能又被使用了)未使用到的函数:未初始化的变量数据赋值隐患:The left operand of …… is a garbage value分析解决方法(例:内存泄露)1、点击左侧对应内存泄露某处,右侧显示泄露行
2、双击行所对应的信息,显示交互详情3、修改代码,解决泄露问题。4、修改后再次静态扫描发现,错误从40减到39,修复的代码行已不再出现错误。注:上述工程截图为测试Demo建议使用场景:1、建议在开发编码阶段使用,直接分析源代码来发现程序中的错误,而不需要实际运行,提前发现代码隐患。
Xcode工具静态检查分析代码
最新推荐文章于 2023-02-06 15:30:45 发布