是否有理由使用&StructName{}而不是创建结构Struct{}?我看到很多使用前一种语法的例子,甚至在Effective Go Page 中,但我真的不明白为什么。
附加说明:我不确定我是否用这两种方法很好地解释了我的问题,所以让我完善我的问题。
我知道通过使用&I 将收到一个指针而不是一个值,但是我想知道为什么我要使用&StructName{}而不是StructName{}. 例如,使用有什么好处:
func NewJob(command string, logger *log.Logger) *Job {
return &Job{command, logger}
}
代替:
func NewJob(command string, logger *log.Logger) Job {
return Job{command, logger}
}
子衿沉夜
陪伴而非守候
相关分类