为了账号安全,请及时绑定邮箱和手机立即绑定

if-else 未定义变量编译错误

if-else 未定义变量编译错误

Go
炎炎设计 2021-06-02 17:54:29
if someCondition() {    something := getSomething()} else {    something := getSomethingElse()} print(something)在此代码示例中,编译器给出undefined: something错误。由于这是一个 if else 语句something变量,将在运行时定义,但编译器无法检测到这一点。我怎样才能避免这个编译错误,这会在下一个版本中修复吗?
查看完整描述

2 回答

?
收到一只叮咚

TA贡献1821条经验 获得超4个赞

在您的代码片段中,您定义了两个something变量,作用域为 if 语句的每个块。


相反,您需要一个作用域在 if 语句之外的变量:


var something sometype

if someCondition() {

    something = getSomething()

} else {

    something = getSomethingElse()


print(something)


查看完整回答
反对 回复 2021-06-28
  • 2 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信