【golang学习之旅】报错:a declared but not used

目录


报错

代码很简单,如下所示。可以发现a和b都飙红了:

运行后就会出现报错:

报错翻译过来就是a已经声明但未使用。当时我很疑惑,在其他语言中从来没有这种情况。况且这里的b不是赋值了吗,怎么也是显示未使用?


原因

然后我去查了些资料发现,为了保证代码的可读性、简洁性和健壮性,Go对于已声明但未使用的变量会在编译阶段报错。

给这个变量赋值并不能算是使用了这个变量,所以上面的b变量也会报错。


解决方法

一个解决方法是使用_这个特殊的变量,这个变量常做占位符。被赋值后立马就会丢弃掉。

将变量赋给_这个特殊的变量也算使用过变量了。

示例:

可以看到a和b不飙红了。也能成功运行:


参考

https://cloud.tencent.com/developer/article/1849998

相关推荐
让头发掉下来几秒前
Kettle学习-17作业的创建与定时调度
学习
小刘在重生~10 分钟前
CSS 零基础完整学习笔记|选择器|盒子模型|布局
css·笔记·学习
AOI小白新手上路29 分钟前
韦东山《ARM 架构与编程》3-3 IMX6ULL 的 GPIO 操作方法 · 学习笔记
arm开发·学习·架构
浩瀚地学33 分钟前
deepagents学习打卡day07
经验分享·笔记·python·学习·agent
Awh-38 分钟前
ARM 裸机开发 DAY5 学习笔记
arm开发·笔记·学习
李游Leo1 小时前
HarmonyOS 7 + ArkUI + Adaptive Layout 学习笔记:折叠屏多形态布局适配与窗口状态响应机制【鸿蒙心迹】
笔记·学习·harmonyos
kyrie_sakura2 小时前
大模型学习6 -- 深度学习 1 概述和PyTorch
pytorch·深度学习·学习
传奇开心果编程2 小时前
【Flutter入门练中学】第3课:滚动与列表
android·学习·flutter·ui·ios
李游Leo2 小时前
HarmonyOS 7 + ArkTS + Image Kit 学习笔记:图像超分处理链路与 PixelMap 数据流实践【鸿蒙心迹】
笔记·学习·harmonyos
microrain2 小时前
首包即身份:SagooIoT 网络组件的注册包、粘包与透传设计
物联网·golang·开源·sagooiot