美文网首页
2023-12-09

2023-12-09

作者: 护念 | 来源:发表于2023-12-08 22:33 被阅读0次

    概括

    1. 在golang中一切都是值传递

    包括指针,也是一种拷贝而已

    2. 结构体不能和nil比较

    比如:

    type Person struct {
    }
    
    func mian() {
      var p Person
      if p == nil { //这里会报错
      }
    }
    

    3. golang不能比较的一些规则

    一个经验:对于一些复合类型能否比较取决于底层的依赖的数据类型;比如结构体,必须要要结构体中的所有字段都可比较那么结构才能比较。

    另外一个经验:如果是一个nil一般也是可以比较的,结构体实例化后不能和nil比较。

    另外:切片不可比较(要比较通过比较切片中的每个元素)
    map映射不可比较,要比较也是要按照key依次去比较

    4. 切片容量扩容规则

    是达到后按照当前容量的2x扩容

    5. 范型指的是多个类型

    相关文章

      网友评论

          本文标题:2023-12-09

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