VS2019静态分析工具:C++ Core Check

C++ Core Check简介C++ Core Check是微软开发的一款用于对C++代码进行静态分析的工具 。 通过C++ Core Guidelines规则对代码进行规则一致性判定 , 从而促使开发者能更加容易的观察到代码中可能存在的缺陷 , 进而提升代码整体质量 。
【VS2019静态分析工具:C++ Core Check】在今天的文章中 , 我们会简单的介绍C++ Core Check对C++ Core Guidelines的覆盖情况 。
早在2015年 , 微软的C++开发团队就在Visual Studio 2015 Update 1中引入了C++ Core Check组件 。 在那个时候 , C++ Core Check组件使用的是来自Bounds profile , Type profile和Lifetimes profile中的规则 。
去年的时候 , C++团队拓展了C++ Core Check组件的覆盖范围 。 我们向已有的规则集合中添加了一些新的规则 , 并引入了全新的C++ Core Guidelines规则集合 。
C++ Core Guidelines目前包含了总共482条规则 , 并一直更新着 , 但是目前被静态分析采用的规则只有其中的263条 , 当前也只有67规则被C++ Core Check采用 。 虽然还没有100%的覆盖 , 但是我们一直都在不断地增加新的规则到C++ Core Check中 。
所有的这些规则都在VisualStudio中可用 。 在下图的编辑器中 , 会显示”Microsoft Native Recommended Rules”规则集合的静态分析结果 。
VS2019静态分析工具:C++ Core Check文章插图
为了使用C++ Core Check规则 , 可以在工程的属性对话框中选择”C++ Core Check rules” , 如下图所示:
VS2019静态分析工具:C++ Core Check文章插图
总结由于C++太过繁杂 , 不遵从一些”最佳实践” , 确实容易掉坑里去 。 这里为微软老大哥点个赞 。
最后Microsoft Visual C++团队的博客是我非常喜欢的博客之一 , 里面有很多关于Visual C++的知识和最新开发进展 。 大浪淘沙 , 如果你对Visual C++这门古老的技术还是那么感兴趣 , 则可以经常去他们那(或者我这)逛逛 。 本文来自:《C++ Core Check in Visual Studio》
VS2019静态分析工具:C++ Core Check文章插图