type Person struct { ID int Name string Email string Age int Address string memo string } func main() { person := &Person{ ID: 1, Name: "Gopher", Email: "gopher@example.org", Age: 5, Address: "", memo: "golang lover", } b, err := json.Marshal(person) if err != nil { log.Fatal(err) } fmt.Println(string(b)) // 文字列に変換 }
でJSON文字列の[]byteを生成とhttp://gihyo.jp/dev/feature/01/go_4beginners/0004
にあったのですが&PersonはPersonでも出力結果が{"ID":1,"Name":"Gopher","Email":"gopher@example.org","Age":5,"Address":""}
で同じになりました。
これはなぜ&が必要なのでしょうか?