在Go语言中,可以将函数作为参数传递给if语句。

huangapple go评论85阅读模式
英文:

Using function as parameter for if statement in go

问题

我正在尝试让以下代码工作:

func ArticlesHandler(w http.ResponseWriter, r *http.Request) {
  ...
  if(ValidTokenProvided(w,r)){
    ...
  }
  ...
}
func ValidTokenProvided(w http.ResponseWriter, r *http.Request) {
  ...
  return false
}

我如何将一个函数作为参数传递?如果不能,那么实现这个功能的最佳方法是什么?

英文:

I'm trying to get the following to work:

func ArticlesHandler(w http.ResponseWriter, r *http.Request) {
  ...
  if(ValidTokenProvided(w,r)){
    ...
  }
  ...
}
func ValidTokenProvided(w http.ResponseWriter, r *http.Request) {
  ...
  return false
}

How can I pass a function as a parameter? or if I can't, what is the best way to achieve this.

答案1

得分: 2

func ValidTokenProvided(w http.ResponseWriter, r *http.Request) bool {
...

英文:

ValidTokenProvided was a void method.. Made it bool:

func ValidTokenProvided(w http.ResponseWriter, r *http.Request) bool {
...

huangapple
  • 本文由 发表于 2013年8月4日 10:28:04
  • 转载请务必保留本文链接:https://go.coder-hub.com/18039204.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定