golang use link style
type Person struct {
Name string
Age int
}
// add age
func (p *Person) AddAge(age int) *Person {
p.Age = age
return p
}
// rename person
func (p *Person) Rename(name string) *Person {
p.Name = name
return p
}
func main() {
p := &Person{}
p.AddAge(20).Rename("Tom")
fmt.Println(*p)
}