为什么要在Go中返回指向新创建的结构的指针?

时间:2017-10-11 20:04:05

标签: pointers go struct constructor

那里有很多例子(如this)显示的内容如下:

type person struct {
    name string
    age int
}

func NewPerson(n string, a int) *person {
    p := person{n, a}
    return &p
}

虽然我对上面的机制感到满意,但似乎总是会返回一个指向新结构的指针。

为什么你不能总是返回实际的结构本身,而不是指向它的指针?

结构很小,未来的可变性并没有像this question中提到的那样进入。此外,该问题并没有具体解决构造函数的问题。这一切都与感知效率和记忆有关吗?

0 个答案:

没有答案