定义连贯操作的结构体方法
package toy
type Toy struct {
nick string
shape string
color string
height int
}
func (t *Toy) SetNick(nick string) *Toy {
t.nick = nick
return t
}
func (t *Toy) SetShape(shape string) *Toy {
t.shape = shape
return t
}
func (t *Toy) SetColor(color string) *Toy {
t.color = color
return t
}
func (t *Toy) SetHeight(height int) *Toy {
t.height = height
return t
}
连贯调用
package main
func main() {
var t = new(Toy).SetNick("nick").SetShape("dog").SetColor("white").SetHeight(10)
_ = t
}
有疑问加站长微信联系(非本文作者)