Variables 短声明运算符隐藏全局变量

Variables 短声明运算符隐藏全局变量,variables,go,assign,Variables,Go,Assign,有一个oneFunction返回两种类型的值int和error。 我想将第一个值分配给已经存在的变量,并将第二个值分配给新变量 如果我使用短声明运算符:=,将创建两个新变量x和err var x int x, err := oneFunction() 为了避免创建新的x变量,在调用oneFunction var x int var err error glob, err = oneFunction() 我想知道是否有其他方法可以将第一个值设置为全局变量,而不是创

有一个
oneFunction
返回两种类型的值
int
error
。 我想将第一个值分配给已经存在的变量,并将第二个值分配给新变量


如果我使用短声明运算符
:=
,将创建两个新变量
x
err

var x int
x, err := oneFunction()

为了避免创建新的
x
变量,在调用
oneFunction

    var x int
    var err error
    glob, err = oneFunction()


我想知道是否有其他方法可以将第一个值设置为全局变量,而不是创建一个新值

不是。您的示例声明了
var err error
是做您想做的事情的惯用方法。

Go中没有任何东西像Java的
这样。你所做的是做你想做的事情的最简单、最干净的方式。谢谢你的回答