定义结构体person,里面有一个字段Name。因为person首字母小写,没有暴露,所以定义函数NewPerson,返回一个person指针。
package test_utils
import ("fmt"
)type person struct{Name string
}
func (p person) Test(){fmt.Println("Hello",p.Name)
}func NewPerson(n string) *person{return &person{n}
}
调用NewPerson函数返回person指针,调用person结构体绑定的Test函数。
package main
import ("fmt""test_utils"
)func main(){p:=test_utils.NewPerson("Tom")p.Test()fmt.Println(*p)}