2010-11-19 10 views
5

Visual Studio 2008でQtを使用しているプロジェクトでリファクタリングを行っていますが、決して呼び出されない関数やメソッドを見つける簡単な方法があるかどうかを知りたいのですが?never-calledファンクションを見つける

答えて

9
+0

ありがとう私はそれを試してみましょう。 – gregseth

+0

Cppcheckにはこの機能がありますか?私はそれを見つけることができません。 – Benjamin

+2

マニュアルのセクション2.5.2を参照してください。@ http://cppcheck.sourceforge.net/manual.pdf – munissor

4

コンパイルオプションの - 壁がそれを行う必要があります。 (または、-Wunused-function)。 VSのコンパイラオプションを確認してください。

1

gccを使用してこのQtのプロジェクトを構築する可能性があるようにあなたは、静的コード分析ツールを試すことができますか?もしそうなら、gcovを使うことができます。実行中に呼び出されたすべてのメソッドが表示されます。次に、ctagsを使用して利用可能なすべてのメソッドのリストを作成できます。これらの2つのセットから、呼び出されていないものを見つけることができます。

なぜなら、使用されている機能のリストを多かれ少なかれ提供するために、アプリケーションはgcovで十分長く実行する必要があるからです。

私はいつも「グレップ」を優先しました

2

(私はリンカまたはコンパイラスイッチ。:-)を使用して簡単な方法があると思います)、それは少し「古い学校」であってもよいです。

Visual Studioは役に立ちますが100%信頼できないコールグラフを作成します。

もう1つの方法は、関数をコメントアウトして、プロジェクトがまだリンクされているかどうかを確認する方法です。

+0

1つの機能だけをチェックしても問題ありません。 – gregseth

関連する問題