打印 Golang 中的所有局部变量

use*_*712 5 go

我想知道如何枚举 golang 中所有局部变量的名称和值。这样做的目的是有效调试 go 代码。

是的,我很清楚 golang 现在对 gdb 的支持有限。

这个stackoverflow常用的线程没有提到golang。

我真的在寻找解决方案(我认为其他人也很好奇)。

非常感谢。

Von*_*onC 2

没有简单的解决方案:

  • gotype可以对代码进行静态分析并打印所有变量(但不打印它们的值)
  • go-spew可以打印变量值(用于 Go 数据结构的深度漂亮打印机以帮助调试),但这就像增强的调试会话printf,而不是像“gdb”那样的调试会话。