如果我map[string]string在函数定义中声明了返回值,是否需要在使用它之前就将其赋值,就像我在函数主体中声明了它一样?http://play.golang.org/p/iafZbG2ZbY
map[string]string
package main import "fmt" func fill() (a_cool_map map[string]string) { // This fixes it: a_cool_map = make(map[string]string) a_cool_map["key"] = "value" return } func main() { a_cool_map := fill() fmt.Println(a_cool_map) }
panic: runtime error: assignment to entry in nil map
地图类型 未初始化映射的值为nil。 使用内置函数可以创建一个新的空映射值make。 甲nil地图相当于不同之处在于可以添加没有元素的空映射。
地图类型
未初始化映射的值为nil。
nil
使用内置函数可以创建一个新的空映射值make。
make
甲nil地图相当于不同之处在于可以添加没有元素的空映射。
是。