C++代码依赖/调用图"查看器"?

lez*_*lon 17 c++ refactoring

有没有(免费)工具可以显示给定函数中所有函数调用的图形?例如,如果我在一个复杂的函数fun()上使用它我试图理解,它会向我展示fun()按顺序调用的所有函数,然后我就有可能看到函数的相同内容由fun()调用,依此类推.我正在为C++代码寻找这个.这样的事情甚至存在吗?

编辑:我正在使用VS 2008,如果这有帮助,但我认为这样的软件无论如何都可以在源文件上工作

Gre*_*ill 18

Doxygen可以做到这一点.请参阅CALL_GRAPH配置选项:

如果将CALL_GRAPHHAVE_DOT标记设置为,YES那么doxygen将为每个全局函数或类方法生成一个调用依赖图.请注意,启用此选项将显着增加运行时间.因此,在大多数情况下,最好只使用\ callgraph命令为所选函数启用调用图.


ks1*_*322 6

是的,Eclipse CDT Call Hierarchy视图提供了这一点.此外,此视图有两个选项:

  • 显示来电者
  • 显示被叫

你问第二个,但我更喜欢第一个代码分析.


ara*_*aud 5

英特尔(R) Single Event API是免费的开源项目,它利用 GraphVis 进行调用图可视化。进行手动或编译器自动检测需要花费一些精力,但除了统计数据和调用图之外,您还可以获得加班视图。 您可以获得的图像示例