Go 語言複製指針的值

Go 語言複製指針的值可以通過 *copy = *pointer 完成。

 1package main
 2
 3import "fmt"
 4
 5type person struct {
 6    name string
 7    gender int
 8}
 9
10func main() {
11    foo := &person{"foo", 1}
12    bar := &person{}
13    *bar = *foo
14    fmt.Println(foo, bar)
15
16    bar.name = "bar"
17    fmt.Println(foo, bar)
18}
1$ go run main.go
2&{foo 1} &{foo 1}
3&{foo 1} &{bar 1}