mutating func
や inout
も ->
じゃなくて .
だし、そういう風にとらえると納得できそうな気持ちになってきた。 package main import "fmt" type Foo struct{ a int } func main() { f := Foo{a: 42} p := &f pp := &p fmt.Println(f.a) fmt.Println(p.a) // OK fmt.Println(pp.a) // NG }
inout
みたいなものかと。inout
はできないけど。