在我的IDE中浏览源代码时,我有时希望能从代码中的特定点看到调用堆栈/函数调用图(当程序没有运行时)以帮助我理解序列事件更好。
我希望看到的功能示例如下: 我点击一个名为'sendNotificationEmail'的函数 并显示“堆栈”功能(所有者在右侧):
sendNotificationEmail->EmergencyNotificator->CheckIfServersOnFire->UpdateThread->Main
我的问题是:任何ides / plugins /或其他显示此类信息,如果没有 - 为什么?
这个问题不是IDE或特定语言。
答案 0 :(得分:2)
这确实倾向于IDE /语言特定。 IntelliJ和Eclipse都有可用于Java方法的调用层次结构,它允许您查看给定方法的调用者和被调用者。 Visual Studio为MS语言提供了类似的功能。
对于不太主流的语言,如果可用的工具不适合,您可能需要吞下一些Rich Programmer Food。
答案 1 :(得分:2)
Doxygen是一个可以获取代码并创建调用图,UML图,类层次结构等的工具......它适用于C ++,Java等。它产生HTML和Latex的输出,我想其他。它可以在Linux,Mac和Windows上运行。
在大多数情况下,它是一个独立的程序。但是,您可以在KDevelop IDE中使用它来执行Doxygen输出的一些基本预览。
答案 2 :(得分:1)
Visual Studio 2005可以做到这一点(我也假设更新的版本):
http://msdn.microsoft.com/en-us/library/z3zaa390(VS.80).aspx
结果在单独的视图/窗口中显示为树。