package main
import "fmt"
func main() {
//map是引用类型
//map 变量的本质是一个指针,指向 hmap 结构体
var mytest1 map[string]int = map[string]int{"a": 1, "b": 2, "c": 3}
fmt.Println("mytest1其实是一个指针,指向:", &mytest1)
fmt.Printf("mytest1 :底层数组地址%p-----变量mytest1地址%p\n", mytest1, &mytest1) // m : 0xc0000c2450
mytest2 := mytest1
fmt.Println("mytest2其实是一个指针,指向:", &mytest2)
mytest2["a"] = 4
fmt.Println(mytest2["a"], mytest1["a"])
fmt.Printf("mytest2:底层数组地址%p-----变量mytest2地址%p\n", mytest2, &mytest2) // m : 0xc0000c2450
}
运行结果如下:
mytest1其实是一个指针,指向: &map[a:1 b:2 c:3]
mytest2其实是一个指针,指向: &map[a:1 b:2 c:3]
4 4
mytest2:底层数组地址0xc00006e4b0-----变量mytest2地址0xc00000a038
自我激励名言:吾虽无百里之才,进一步有一步的欢喜。