アプリ版:「スタンプのみでお礼する」機能のリリースについて

CALLされていない(使われていない)メソッドを削除したいのですが、その検出方法がわかりません。数が多いので、秀丸でgrepというような方法ではなく、簡単にミスが少ないように、CALLされていないメソッドを見つける方法を教えていただきたいのです。
環境はMicrosoft Visual C++ 2005です。
よろしくお願いします。

A 回答 (3件)

プロジェクトの設定(プロパティ)で



[構成プロパティ]
 リンカ
  [全般]  進行状況の表示 = 詳細をすべて表示
  [最適化] 参照 = 参照されないデータを除去する

に設定すれば、ビルドの最後のリンク時に詳細メッセージが表示されます。
その中で

  (関数名等)は(オブジェクトファイル名).obj から廃棄されました。

と表示されます。
ただし、メッセージが大量なので、ちゃんとしたツールを使うほうがいいかもしれません。

P.S. これは C ソースで確認したものなので、C++ だとどうなのか自信ナシ。
    • good
    • 0
この回答へのお礼

呼ばれないメソッドに対しておっしゃるようなメッセージが表示されました。
この方法でやってみようと思います。大量のメッセージは秀丸でgrepしたら見やすくなりました。
ご回答ありがとうございました。

お礼日時:2006/11/30 11:46

静的な解析ツールでは限界がありそうです。


呼ばれていない仮想関数を静的に割り出すことはできませんから。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
結局、フリーでどこでCALLされているか、わかるソフトはみつかりませんでした。

お礼日時:2006/11/30 11:43

お金をかけても良いのであれば、「仕様書工房」に、そういう機能があります。

メソッド(関数)の順方向(呼び出している側)逆方向(呼ばれている側)の呼び出しリストや、最近のバージョンでは、未参照定義(呼ばれていないもの)の一覧機能だとか。

一般には、クロスリファレンスツールで探してみると、良いものが見つかるかもしれません。

参考URL:http://jp.fujitsu.com/group/fst/services/frontie …
    • good
    • 0
この回答へのお礼

すみません。お金はかけられないのです。
フリーのクロスリファレンスツールでC++でも使えそうなものがないか探してみます。
ご回答ありがとうございました。

お礼日時:2006/11/28 13:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!