栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么从当前程序包将结构传递给具有文字struct参数的函数与从另一个程序包传递的函数不同?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么从当前程序包将结构传递给具有文字struct参数的函数与从另一个程序包传递的函数不同?

您需要导出您的struct字段:

type Struct struct {    Field string}

然后还将调用更改为使用导出的字段:

func Fn(arg struct{Field string}) {    fmt.Println(arg)}

根据语言规范(特别是最后一句话):

对于结构文字,以下规则适用:

  • 键必须是在LiteralType中声明的字段名称。
  • 不包含任何键的元素列表必须按声明字段的顺序为每个struct字段列出一个元素。
  • 如果任何元素具有键,则每个元素都必须具有键。
  • 包含键的元素列表不需要为每个结构字段都具有一个元素。省略的字段将获得该字段的零值。
  • 文字可能会省略元素列表;这样的文字对其类型求值为零。
  • 为属于不同包的结构的非导出字段指定元素是错误的。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/387452.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号