← 返回首页
Go中可以对Map的元素取地址吗?
无法对 map 的 key 或 value 进行取址。会发生编译报错,这样设计主要是因为map一旦发生扩容,key 和 value 的位置就会改变,之前保存的地址也就失效了。
func main() {
m := make(map[string]int)
fmt.Println(&m["qcrao"])
}
会出现编译报错:
./main.go:8:14: cannot take the address of m["qcrao"]