golang中一类函数数组的混淆语法
我是新来的。对以下代码感到困惑:golang中一类函数数组的混淆语法,go,Go,我是新来的。对以下代码感到困惑: 0 package main
0 package main
1
2 import "fmt"
3
4 type job func(in, out chan interface{})
5
6 func main() {
7 myJobs := []job{
8 job(func(in, out chan interface{}) {
9 fmt.Println("marker 1")
10 }),
11 job(func(in, out chan interface{}) {
12 fmt.Println("marker 1")
13 }),
14 }
15 }
我知道第4行定义了一种新类型的工作。然而,我对第8行和第11行如何使用它感到困惑。通常,当我从另一个函数返回类型时,我会定义这样的类型。这种特殊用法对我来说是新的,我不明白。在第8行和第11行。具体地说,我不明白那些台词的作用。从上下文来看,我认为这是一部分工作,但我不明白语法。job是一种类型,所以看起来发生的是funcin,out-chan接口{}。我觉得我错过了一些重要而明显的东西。如果您能帮上忙,我将不胜感激。我怀疑这可能会使事情变得混乱;在这种情况下,实际上不需要这样做,以下内容也会起作用,更容易理解:
myJobs2 := []job{
func(in, out chan interface{}) {
fmt.Println("marker 1")
},
func(in, out chan interface{}) {
fmt.Println("marker 1")
},
}
我在中保存了一个示例。这是否回答了您的问题?