golang 语法

语法易错点

  • 传结构的值时,结构体的对象类型会被转换为接收者定义的类型
    dataList := []struct {
        dst  interface{}
        src  interface{}
        want interface{}
    }{
        //{PersonM{Name: "Alice", Age: 20}, PersonM{Age: 20, Name: "Alice"}, PersonM{Name: "Alice", Age: 20}},
        //{PersonM{Name: "Alice", Age: 20}, PersonM{Name: "Bob", Age: 20}, PersonM{Name: "Bob", Age: 20}},
        {&PersonM{Name: "Alice", Age: 20}, PersonM{Name: "Bob", Age: 21}, PersonM{Name: "Bob", Age: 21}},
        //{WomanM{Name: "Alice", Age: 20}, PersonM{Name: "Alice", Age: 20}, WomanM{Name: "Alice", Age: 20}},
        //{WomanM{Name: "Alice", Age: 20}, PersonM{Name: "Alice", Age: 20, Height: 170}, WomanM{Name: "Alice", Age: 20}},
        //{PersonM{Name: "Alice", Age: 20, Height: 170}, WomanM{Name: "Alice", Age: 21}, PersonM{Name: "Alice", Age: 21, Height: 170}},
        //{PersonM{Name: "Alice"}, WomanM{Name: "Bob", Age: 21}, PersonM{Name: "Bob", Age: 21}},
    }
  • 值在使用时要初始化,不然会报访问nil对象
    runtime error: invalid memory address or nil pointer dereference\ngoroutine
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 变量定义 变量定义语法 使用var关键字,可放在函数内,也可放在包内 使用:=定义变量,只能在函数内使用 内建变量...
    wch853阅读 1,478评论 0 2
  • 1.安装 https://studygolang.com/dl 2.使用vscode编辑器安装go插件 3.go语...
    go含羞草阅读 1,588评论 0 6
  • (因为有C、C++语法的基础 所以写的有一点简陋了 只是code了我觉得写代码易错的一些地方学习方法 尚硅谷韩顺平...
    亚西阅读 437评论 0 0
  • 原文:https://makeoptim.com/golang/effective-go[https://make...
    CatchZeng阅读 1,856评论 0 1
  • 出处---Go编程语言 欢迎来到 Go 编程语言指南。本指南涵盖了该语言的大部分重要特性 Go 语言的交互式简介,...
    Tuberose阅读 18,501评论 1 46