关于重复声明格式转换方法的返回值,没有报错
提问、在 main 方法内我重复声明了两次 err ,为什么没有报错且可以正常执行啊
22
收起
正在回答
2回答
1. 重复定义当然会出错。
2. 问题在于,:=这个操作,并不是重新定义所有左侧变量,而是重新定义左侧变量中需要定义的变量。
3. 以你的代码为例,第二次:=的时候,只是定义了myint而已。
也就是说,myint, err := xx 表示如果没有定义myint则自动定义myint, 但是err已经定义了, 所以这里表示err不需要重新定义了使用已有的,但是myint没有定义就会自动帮定义
更细节的信息可以到 https://go.dev/ref/spec#Short_variable_declarations 官网查看
Go开发工程师全新版
- 参与学习 489 人
- 解答问题 559 个
风口上的技术,薪资水平遥遥领先,现在学习正值红利期! 未来3-5年,Go语言势必成为企业高性能项目中不可替代的语言 从基础到项目实战再到重构,对转行人员友好,真正从入门到精通!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星