Return 1 个值到 golang 中具有多个 return 值的函数

Return 1 value to the function with multiple return values in golang

我只想 return 将 1 个值赋给具有多个 return 值的函数。 我试过这个:

func myFunc() (int, int){
    return _, 3
}

但它不起作用并引发此错误:不能将 _ 用作值

我已经知道可以接收 returned 值之一。

有什么方法可以 return 只有 1 个值吗?

对其他 return 参数使用 zero value

func myFunc() (int, int){
    return 0, 3
}

如果你使用named result参数,你也可以这样做:

func myFunc() (x, y int){
    y = 3
    return
}

在这种情况下,x 也将是其类型的零值,0int 的情况下。

您还可以编写一个辅助函数来添加一个虚拟 return 值,例如:

func myFunc() (int, int) {
    return extend(3)
}

func extend(i int) (int, int) {
    return 0, i
}

但我个人认为不值得。只是 return“未使用”return 参数的零值。