当前位置:  开发笔记 > Android > 正文

谁叫这个功能?

如何解决《谁叫这个功能?》经验,为你挑选了1个好方法。

在我的上一份工作(遗留FORTRAN 77代码)中,我们有交叉引用文件列出了哪些子程序称为其他子程序,在哪些文件子程序中定义,哪些公共块包含哪些变量,哪些子程序包含哪些公共块等等.然后由shell脚本使用,它们会对交叉引用文件进行grepped,并会告诉您有关程序设计的信息.

我现在在一家新公司(C++代码),我发现ctags取代了一些功能.我最想念的一件事是我们称之为"who.calls"的命令,它列出了哪些子程序(我的意思是函数或方法,必须习惯于OO说)调用给定的子程序.例如,如果子例程foo调用子例程bar:

>who.calls bar
foo

如果没有从我的旧公司重新设计编程环境,有关如何执行此操作的任何建议?我正在寻找一个超级正则表达式或其他方法,我可以在命令行使用,但我愿意接受其他方法,采取一些完全不同的方法来给我相同的信息.我基本上想要在不运行调试器的情况下发现调试函数堆栈.



1> Paul Tomblin..:

你可能想考虑使用doxygen.它可以生成向您显示整个调用树和类结构的网页,以及提取正确格式化的注释以记录类和方法,就像Javadocs为java做的那样.

另一种可能性是开始使用IDE.使用vi(然后是gvim)和ctags 25年后,我最近加入了21世纪并开始使用Eclipse(我正在使用Java,但我已经看过Eclipse的C++插件).除了能够执行标记可以执行的所有操作之外,它还可以将您带到当前方法的所有调用方.最重要的是,它内置了一个非常好的交互式调试器.

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有