2014-12-08 37 views
3

我正在尋找一種工具來幫助檢測不必要的頭包含在一個大的C++代碼庫中。關於這個主題的其他stackoverflow問題都提示cppclean。所以我已經安裝了cppclean,我正在嘗試使用它,但即使是在一些錯誤的例子中,它也不會給出任何結果。如何使用cppclean查找未使用的標頭

例如,這是我正在嘗試清理的內容。源文件:

// foo.cpp 
#include "bar.h" 

void main() { }; 

而頭文件:

// bar.h 
class bar { 
}; 

我跑:

cppclean foo.cpp 

但不打印輸出,並返回0。

我做什麼錯誤?有沒有關於如何使用這個工具的任何教程?

回答

-3

The cppclean documentation明確規定,對那裏的頭版,在 「功能」:

  • 查找和打印C++語言結構:類,方法,函數等
  • 查找類與虛擬方法,沒有虛擬析構器,也沒有基地
  • 查找使用線程時潛在問題的全局/靜態數據
  • 不必要的前向類聲明
  • 不必要的函數聲明
  • 未聲明的函數定義
  • (計劃)查找不必要的頭文件包含(#include)
    • 沒有直接提及任何在頭
    • 頭是不必要的,如果類爲正向
  • (pla引用頭NNED)的源文件不能直接執行#included,即依靠>文件 - 傳遞的#include從另一頭
  • (計劃)未使用成員(private,protected和&公衆)的方法和數據
  • (在SQL數據庫計劃)店鋪AST這樣的關係可以查詢

「計劃」是指它是他們計劃在未來添加一個功能。它還沒有。

+0

捕捉!這就是_planned_的意思?我很震驚! – 2014-12-08 02:18:04

+6

這是該項目的舊主頁。新的主頁(https://github.com/myint/cppclean)列出了實現的功能。 – Shum 2014-12-08 02:19:07

+1

讓我們希望他們使用標準中定義的內容的標準頭文件,而不是使用當前版本的實現版本。 – Deduplicator 2014-12-08 02:20:18

0

您的工作目錄中運行cppclean .在您CPP頭文件是。 您需要將所有源代碼提供給Cppclean,以便它可以解析它們並查找問題。

要包含多個目錄,請參見Run section of Cppclean's documentation