CppDepend是一款專業(yè)的c++代碼分析工具,這款工具可以提高代碼質(zhì)量,還可以使用CQLinq來(lái)自動(dòng)化Review代碼,軟件甚至可以幫我們做代碼重構(gòu)。
功能特色:
代碼規(guī)則和代碼查詢
支持通過(guò)LINQ(CQLinq)進(jìn)行代碼查詢,可輕松編寫(xiě)自定義規(guī)則和查詢代碼。
技術(shù)債務(wù)估算
對(duì)于每個(gè)問(wèn)題,可通過(guò)自定義C#公式估算修復(fù)成本和嚴(yán)重性。
質(zhì)量門(mén)
質(zhì)量門(mén)是C#LINQ(CQLinq)查詢,它們執(zhí)行PASS / FAIL標(biāo)準(zhǔn)來(lái)編碼質(zhì)量。
DevOps:構(gòu)建流程集成
將CppDepend集成到您的構(gòu)建過(guò)程中,并獲得詳細(xì)的報(bào)告以查看進(jìn)度并防止代碼質(zhì)量下降。
標(biāo)準(zhǔn)品
CppDepend開(kāi)箱即用地支持最流行的C ++標(biāo)準(zhǔn):MISRA,CERT,CWE和HICPP。
代碼自動(dòng)化
因?yàn)橐环鶊D片價(jià)值一千個(gè)單詞,所以CppDepend提出了幾種獨(dú)特的方法來(lái)可視化您的代碼。
使用體驗(yàn):
首先,我們打開(kāi)CppDepend的主界面(運(yùn)行VisualCppDepend.exe),創(chuàng)建一個(gè)新項(xiàng)目:
然后在彈出的對(duì)話框里給新項(xiàng)目起個(gè)好名字,之后選擇OK:
這時(shí),剛剛打開(kāi)的項(xiàng)目里沒(méi)有任何分析數(shù)據(jù),我們需要先給它指定一個(gè)項(xiàng)目?梢灾苯油ㄟ^(guò)Visual Studio的項(xiàng)目文件建立分析數(shù)據(jù)。
它可以支持從VC6一直到VS2013的全系列項(xiàng)目文件。
在導(dǎo)入了項(xiàng)目之后,我們直接點(diǎn)擊它左上角的“運(yùn)行”按鈕,即可進(jìn)行靜態(tài)分析,及生成報(bào)告了:
左邊的按鈕僅進(jìn)行靜態(tài)分析,而右邊的按鈕還將自動(dòng)生成一份報(bào)告。
需要注意的是,CppDepend基于Clang,和我們平時(shí)編譯C++代碼時(shí)一樣,只有cpp文件中實(shí)際產(chǎn)生效果了的代碼才會(huì)參與分析。
在分析結(jié)束后,我們就可以看到CppDepend針對(duì)有效代碼給出的報(bào)告了。
在上圖靠右邊的任何一個(gè)數(shù)據(jù),以及右下方的指標(biāo)都是可編輯的。比如,我們可以選擇Code Quality -> Methods with too many local variables,這時(shí)顯示出來(lái)的內(nèi)容如下: