• 技术文章 >后端开发 >Golang

    golang nil什么意思

    (*-*)浩(*-*)浩2019-12-13 13:44:51原创991

    大家都清楚,当你声明了一个变量 但却还并木优赋值时,golang中会自动给你的变量类型给一个对应的默认零值。

    这是每种类型对应的零值: (推荐学习:go

    bool      -> false                              
    numbers -> 0                                 
    string    -> ""      
    
    pointers -> nil
    slices -> nil
    maps -> nil
    channels -> nil
    functions -> nil
    interfaces -> nil

    再来一个strcut :

    type Person struct {
      Age int
      Name string
      Friends []Person
    }
    
    var p Person // Person{0, "", nil}

    变量p只声明但没有赋值,所以p的所有字段都有对应的零值。

    1. Go的文档中说到,nil是预定义的标识符,代表指针、通道、函数、接口、映射或切片的零值,并不是GO 的关键字之一

    2. nil只能赋值给指针、channel、func、interface、map或slice类型的变量 (非基础类型) 否则会引发 pani

    以上就是golang nil什么意思的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:golang
    上一篇:golang lua怎么用 下一篇:golang json乱码解决方法
    大前端线上培训班

    相关文章推荐

    • golang http怎么使用• golang ide有哪些• golang iota从几开始• golang log如何设计

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网