nil在golang中是什么意思?

很多情况下在golang中使用 。例如:

func (u *URL) Parse(ref string) (*URL, error) {

refurl, err := Parse(ref)

if err != nil {

return nil, err

}

return u.ResolveReference(refurl), nil

}

但是我们不能这样使用它:

var str string //or var str int

str = nil

Golang编译器将引发can't use nil as type string in assignment错误。

看起来nil只能用于struct和interface的指针。如果是这样, 而

回答:

在Go中,nil是 的 ,表示 未初始化的 值。

nil并不意味着某种“未定义”状态,它本身就是一个适当的值。Go中的对象nil仅当且仅当其值为is时nil,才可以是上述类型之一。

error与接口不同,an 是一个接口,nil一个有效值也是如此string。出于明显的原因,nil错误代表 没有错误

以上是 nil在golang中是什么意思? 的全部内容, 来源链接: utcz.com/qa/412655.html

回到顶部