【问题标题】:Re-run the current function when the function is a variable [duplicate]当函数是变量时重新运行当前函数[重复]
【发布时间】:2020-02-16 05:10:53
【问题描述】:

我有一个名为 test 的函数,它位于主函数内。

//stuff

func main() {
  var test = func() {
    if (/*some condition from main*/) {
      return test()
    }
  }

  val := test()
}

当我运行它时,它会说:

未定义:测试

它引用了测试函数中的return test()。 我该如何解决这个问题?

【问题讨论】:

  • var test func(); test = func() { ... }

标签: function go


【解决方案1】:

你必须在使用它之前声明变量:

var test func()
test=func() {
   if ... {
     test()
   }
}

【讨论】:

    猜你喜欢
    • 2013-02-23
    • 2020-11-29
    • 2012-10-28
    • 2012-10-12
    • 1970-01-01
    • 2018-01-26
    • 2014-08-14
    • 2011-08-21
    • 2016-03-28
    相关资源
    最近更新 更多