叁山芜比丘 2022-12-08 22:11 采纳率: 50%
浏览 30
已结题

这个代码什么意思,这么奇怪

问题遇到的现象和发生背景

go语言这个是什么意思啊,我看go源码中有一个这么写,这样写能干啥?

遇到的现象和发生背景,请写出第一个错误信息
用代码块功能插入代码,请勿粘贴截图。 不用代码块回答率下降 50%

func _() {
var x [1]struct{}
_ = x[0]
}

运行结果及详细报错内容
我的解答思路和尝试过的方法,不写自己思路的,回答率下降 60%
我想要达到的结果,如果你需要快速回答,请尝试 “付费悬赏”
  • 写回答

2条回答 默认 最新

  • 懂事的人 2023-01-14 15:49
    关注

    这段代码定义了一个空的匿名函数 _(),这个函数中定义了一个长度为1的结构体数组 x,但是并没有将这个数组中的第一个元素赋值给任何变量。

    这段代码是不会产生任何有用的结果,它只是占用了一点空间并被 Go 编译器忽略。

    这种写法有时候在编译时会抛出警告,不过并不会有什么影响。

    这种写法可能是为了在代码中增加一些标记,便于调试或者说明。

    也有可能是为了让编译器不再报告某些类型的错误。比如在一些特殊情况下,函数会返回未使用的变量,编译器会报错,这个时候可以将这些变量赋值给 _ 变量,就能避免这个错误了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月24日
  • 已采纳回答 10月16日
  • 创建了问题 12月8日

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表