map中的元素并不是一个变量,不能对map元素进行取址操作。禁止对map元素取址的原因是map可能随着元素数量的增长而重新分配更大的内存空间,从而可能导致之前的地址无效。slice元素可以取址操作。
fmt.Println(&myMap3["str1"])//错误,不能取址操作
8 nil值映射
map上的大部分操作,包括查找、删除、len和range循环都可以安全工作在nil值的map上,它们的行为和一个空map类似。但是向一个nil值的map存入元素将导致一个panic异常。
map中的元素并不是一个变量,不能对map元素进行取址操作。禁止对map元素取址的原因是map可能随着元素数量的增长而重新分配更大的内存空间,从而可能导致之前的地址无效。slice元素可以取址操作。
fmt.Println(&myMap3["str1"])//错误,不能取址操作
8 nil值映射
map上的大部分操作,包括查找、删除、len和range循环都可以安全工作在nil值的map上,它们的行为和一个空map类似。但是向一个nil值的map存入元素将导致一个panic异常。
内容版权声明:除非注明,否则皆为本站原创文章。