定义结构体person,里面有一个字段Name。因为person首字母小写,没有暴露,所以定义函数NewPerson,返回一个person指针。
go
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函数。
go
package main
import (
"fmt"
"test_utils"
)
func main(){
p:=test_utils.NewPerson("Tom")
p.Test()
fmt.Println(*p)
}