使用值为 nil 的 slice、map会发生什么?

提问者:帅平 问题分类:面试刷题
使用值为 nil 的 slice、map会发生什么?
1 个回答
赤脚踏两船
赤脚踏两船
允许对值为 nil 的 slice 添加元素,但对值为 nil 的 map 添加元素,则会造成运行时 panic。
// map 错误示例
func main() {
    var m map[string]int
    m["one"] = 1  // error: panic: assignment to entry in nil map
    // m := make(map[string]int)// map 的正确声明,分配了实际的内存
}    
// slice 正确示例
func main() {
 var s []int
 s = append(s, 1)
}
发布于:5个月前 (11-29) IP属地:四川省
我来回答