为什么go的slice使用make初始化后和nil判断不相等 go的slice底层是类似如下的结构, type slice struct { len int cap int ptr *element } go判断切片是否为nil,实际判断的是slice下的数组的引用ptr指针是否为nil,未初始化时prt指针的零值默认为nil,初始化后,go会为底层引用的数组初始化为一个空数组,即ptr不为零值了,故初始化后slice判断不为nil