gpt4 book ai didi

go - Go 中的第一类函数

转载 作者:IT老高 更新时间:2023-10-28 12:58:36 27 4
gpt4 key购买 nike

我来自具有一流功能支持的 JavaScript。例如,您可以:

  • 将函数作为参数传递给另一个函数
  • 从函数返回一个函数。

谁能给我一个例子,说明我在 Go 中如何做到这一点?

最佳答案

Go Language and Functional Programming可能有帮助。来自这篇博文:

package main
import fmt "fmt"
type Stringy func() string
func foo() string{
return "Stringy function"
}
func takesAFunction(foo Stringy){
fmt.Printf("takesAFunction: %v\n", foo())
}
func returnsAFunction()Stringy{
return func()string{
fmt.Printf("Inner stringy function\n");
return "bar" // have to return a string to be stringy
}
}
func main(){
takesAFunction(foo);
var f Stringy = returnsAFunction();
f();
var baz Stringy = func()string{
return "anonymous stringy\n"
};
fmt.Printf(baz());
}

作者是博客所有者:Dethe Elza(不是我)

关于go - Go 中的第一类函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4358031/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com