有没有办法通过在程序执行过程中自动输出每个函数调用以及返回值来简化调试过程?
也许是一个在每个函数之前和之后添加输出代码的工具,我可以在调试时使用它然后取消它?
我在Windows上的Eclipse中编写代码,并在没有图形界面的Linux服务器上使用GNU C ++进行编译 - 因此没有可用的KCachegrind。单独使用Valgrind + callgrind会产生大量文本,这对我来说似乎并不适用......
GDB调试器在某种程度上是一种选择,但如果我想要每个(我的)函数调用数据而不是每个语句,那么它的速度很慢且太详细。
当搜索到这个时,我记得读过有两个特殊的函数可以定义,它们会在每个函数的开始和结束时自动执行,然后可以定义它们来输出变量。但是,它适用于其他一些编程语言或特定的C ++ IDE。