假设有一个函数返回两个变量。func num(a,b int) (int,int) { return a+b, a-b}http://play.golang.org/p/bx05BugelV并假设我有一个只接受一个 int 值的函数。package mainimport "fmt"func main() { fmt.Println("Hello, playground") _, a := num(1, 2) prn(a)}func num(a, b int) (int, int) { return a + b, a - b}func prn(a int) { fmt.Println(a)}http://play.golang.org/p/VhxF_lbVf4无论如何我只能在没有 _,a:=num(1,2) 的情况下获得第二个值 (ab)?像 prn(num(1,2)[1]) <-- 这行不通,但我想知道是否有类似的方法
1 回答
三国纷争
TA贡献1804条经验 获得超7个赞
使用包装函数。例如,
package main
import "fmt"
func main() {
_, a := num(1, 2)
prn(a)
prn1(num(1, 2))
}
func num(a, b int) (int, int) {
return a + b, a - b
}
func prn(a int) {
fmt.Println(a)
}
func prn1(_, b int) {
prn(b)
}
输出:
-1
-1
- 1 回答
- 0 关注
- 313 浏览
添加回答
举报
0/150
提交
取消