美文网首页
go语言陷阱之七:不能用nil初始化无类型变量

go语言陷阱之七:不能用nil初始化无类型变量

作者: wu_sphinx | 来源:发表于2015-07-25 16:35 被阅读522次

    The "nil" identifier can be used as the "zero value" for interfaces, functions, pointers, maps, slices, and channels
    go里面的nil可以作为接口、方法、指定等(后面不知怎么翻译)的零值,但一定得有类型。
    先上代码:

    package main
    
    func main() {
        var x = nil //error
    
        _ = x
    }
    # command-line-arguments
    ./hello.go:4: use of untyped nil
    

    至此,go语言中变量似乎都有一个明确的归属,对于coder来说,才能做到心中有数。
    找到原因后,上正确示例:

    package main
    
    func main() {  
        var x interface{} = nil
    
        _ = x
    }
    

    又避免了一坑

    相关文章

      网友评论

          本文标题:go语言陷阱之七:不能用nil初始化无类型变量

          本文链接:https://www.haomeiwen.com/subject/pzkmqttx.html