在go中初始化多个结构

Sta*_*tan 1 struct go

我需要初始化多个struct变量

让我们说结构是

type Foo struct {
  a int
  b *Foo
}
Run Code Online (Sandbox Code Playgroud)

让我们说我想初始化其中的5个.是否有一种更清洁的方式来做多次下面的片段?

s0 := &Foo{}
s1 := &Foo{}
s2 := &Foo{}
Run Code Online (Sandbox Code Playgroud)

就像是

var a, b, c, d int
Run Code Online (Sandbox Code Playgroud)

感谢帮助!:)

rig*_*old 6

如果您愿意,可以将它们放在一个语句中:

s0, s1, s2 := new(Foo), new(Foo), new(Foo)
Run Code Online (Sandbox Code Playgroud)

你也可以这样做:

var s0, s1, s2 Foo
Run Code Online (Sandbox Code Playgroud)

然后使用&s0,&s1&s2的,而不是随后s0,s1s2.