我们在写Go代码的时候,我们是否约定俗成就是定义返回带有*的返回结果?
例如:*router.GeoIP
func getLocalIPs() *router.GeoIP {
cidr := make([]*router.CIDR, 0, 16)
for _, ip := range localIPs {
c, err := conf.ParseIP(ip)
common.Must(err)
cidr = append(cidr, c)
}
return &router.GeoIP{
CountryCode: "PRIVATE",
Cidr: cidr,
}
}
并不是,在go语言中表示的是指针类型,不加返回的是值类型,是不一样的。