8

プログラムの実行を視覚化する場合、プログラムのコールグラフを取得することから始めると思います。

しかし、実行中にc / c ++プログラムのコールグラフをどのように取得しますか?

編集:説明、私は現在Linux上でg ++を使用して実行していますが、別のプラットフォームを使用している場合の解決策についても興味があると思います。

4

3 に答える 3

6

私はetraceを使用してプログラムの実行を追跡しました。

エジプトも同じことをしますが、C++のサポートは限られています。

どちらも、プログラムにgccをインストルメントする必要があります。

于 2011-08-16T12:57:38.337 に答える
4

KCachegrindを使用して、 Valgrindのcallgrindツールによって生成されたデータに基づいてコールグラフを生成および分析できます。

于 2011-08-16T12:14:22.863 に答える
1

SofwareVerifyのBugValidator(無料のパブリックベータが利用可能)がこれを行います。

ホームページからの抜粋:

C ++ Bug Validatorは、実行中のアプリケーションの自動実行履歴ログを提供します。アプリケーションを再コンパイルまたは再リンクする必要はありません。C ++ Bug Validatorは、デバッグ情報やMAPファイルを処理します。C ++ Bug Validatorを使用すると、アプリケーション全体、または必要なDLLのみで実行履歴ログを実行できます。

(私からのマークアップ)。

彼らがそれをどのように行うのかはわかりませんが、明らかにそれは可能です。

于 2011-08-16T12:00:49.567 に答える