1. 程式人生 > 實用技巧 >VS2019靜態分析工具:C++ Core Check

VS2019靜態分析工具:C++ Core Check

C++ Core Check簡介

C++ Core Check是微軟開發的一款用於對C++程式碼進行靜態分析的工具。通過C++ Core Guidelines規則對程式碼進行規則一致性判定,從而促使開發者能更加容易的觀察到程式碼中可能存在的缺陷,進而提升程式碼整體質量。

在今天的文章中,我們會簡單的介紹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”規則集合的靜態分析結果。

為了使用C++ Core Check規則,可以在工程的屬性對話方塊中選擇”C++ Core Check rules”,如下圖所示:

總結

由於C++太過繁雜,不遵從一些”最佳實踐”,確實容易掉坑裡去。
這裡為微軟老大哥點個贊。

最後

Microsoft Visual C++團隊的部落格是我非常喜歡的部落格之一,裡面有很多關於Visual C++的知識和最新開發進展。大浪淘沙,如果你對Visual C++這門古老的技術還是那麼感興趣,則可以經常去他們那(或者我這)逛逛。
本文來自:《C++ Core Check in Visual Studio》