【发布时间】:2016-06-30 07:32:21
【问题描述】:
程序available on The Go Playground读取
package main
import "fmt"
func main() {
var name string = nil
fmt.Println(name)
}
并产生错误
prog.go:6: cannot use nil as type string in assignment
我了解"" is the "zero value" for strings。我不明白为什么我不能将nil 分配给我的string。
【问题讨论】:
-
您也不能将
nil分配给ints。为什么这会让你对字符串感到惊讶? -
通过防止将 nil 分配给字符串,该语言消除了一类错误。注意string pointers 可以赋值为 nil。
-
不知道为什么这被否决了。对我来说似乎是一个非常合理的问题