VS “15”包含C++核心检查代码分析

发表时间:2016.10.12

作者:Andrew Pardoe

原文发表地址:https://blogs.msdn.microsoft.com/vcblog/2016/10/12/cppcorecheck/ Visual Studio “15” Preview5现在已经包含了C++核心准则检查器。这就意味着您不再需要从NuGet安装代码核心检查包来检查你的代码是否符合C++核心准则的规则和配置文件。您只需要配置代码分析就可以使其包含C++核心检查的扩展。

你可以在解决方案或者项目的属性页上来配置代码分析。右键单击项目或者解决方案,或从菜单栏中选择“分析->配置代码分析”。

 

 

 

 

 

 

 

 

在属性页的底部找到代码分析条目,然后选择”扩展“。这里有两个选项:一个是启用已发布的C++核心检查,一个是启用实验核心检查。

 

 

 

 

 

 

 

 

 

发布的核心检查VS试验的核心检查

发布的核心检查与试用的核心检查之间有什么不同?发布的核心检查更加健全。它们发现的警告比试用的的核心检查更加值得信赖并且检查器本身运行更快。现在,它们包括我们发布的VS 2015 Update1的第一组C++核心准则以及准则中的一些其他检查。

试验的检查包含正在开发的规则但是它会对你运行的代码不利。它们包含我们在2016年3月发布的生命周期检查以及其他正在开发的检查。请注意,虽然大多数的检查会从“试验”移到“发布”,但您不应该依赖实验组中的任何检查。因为其中有一些是原型,不会进入发布组。

 

 

 

 

 

 

 

 

 

 

未来基于NuGet的包

提醒一下,如果你使用Visual Studio 2015,你必须从NuGet安装C++ 核心检查包,此更改仅适用Visual Studio “15”的下一个主要版本的Visual Studio。(注意VS”15”!=Visual Studio 2015,每一个版本的Visual Studio有两个名称:内部名称是一个简单的递增数字,外部名称是它的发布年份Visual Studio “15“恰好在Visual Studio 2015是当前发布的版本,但是他们是不同的版本。Visual Studio “15” 将被重命名为其发布年份-Visual Studio 2016,Visual Studio 2017等) 。

现在通过NuGet发布的CppCoreCheck包会继续供VS2015的用户使用。之后我们会将工作重点放在Visual Studio内置检查器上。我们总是要求您使用有最新的CppCore检查的最新发布的VS更新,因为在C++编译器和代码分析工具之间存在着紧密的耦合。一旦Visual Studio “15” 发布你可以继续使用已存在NuGet包和Visual Studio 2015,但是如果你想使用最新的检查器,你需要更新到Visual Studio “15”。

C++编译器和代码分析工具之间的紧密耦合意味着,当您将现有的VS2015项目带到VS”15”时,必须将项目移到使用较新的平台工具集。您可以通过调出项目属性(通过右键单击项目)并选择”常规“类别下的”平台工具集“来轻松实现。一旦选择”Visual Studio 2016(v141) “, 您应该在项目属性页的代码分析部分中看到”扩展“的设置。

 

 

 

 

 

 

 

 

 

 

 

向我们发送你的反馈!

一如既往,我们期待你的反馈。对于问题,请通过”报告问题“选项通知我们,无论是安装程序还是Visual Studio IDE本身。有关建议,请通过UserVoice告知我们。您可以通过电子邮cppcorecheck@microsoft.com与我们联系。