如何打印出闭包捕获的所有变量?例如:
func myScope() {
users := GetUsers("John")
services := GetServices("Movies")
allVariablesString := func() string {
return PrintAllCapturesWithoutSpecified()
}()
}
我计划尽可能利用这个想法来记录错误范围内的任何相关值,而无需手动指定每个变量。
最佳答案
这在 Go 中是不可能的。你不能在闭包中请求你周围的环境。它可以使用,但您无法查看/阅读它。您可以做一些奇怪的事情,比如将它们放在一个结构中并查看您的结构,但是根据您所做的,这可能会变得非常困惑和不合常理。
关于go - 打印闭包捕获的所有变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39601230/