【发布时间】:2019-01-20 06:46:27
【问题描述】:
我有一个嵌套结构。我想在一个方法中更新它。 由于某种原因,更新不会发生。
package main
import "fmt"
type B struct {
c int
}
type A struct {
b B
}
func (a A) updateB(n int) {
a.b.c = n
}
func main() {
a := A{b: B{c: 5}}
fmt.Println(a)
a.updateB(42)
fmt.Println(a)
}
我得到的输出是
{{5}}
{{5}}
在大多数语言中,我希望它会更新。这是一些特殊的 Go 行为吗?在 Go 中如何更新嵌套结构?
【问题讨论】:
标签: go