GO:单值上下文中的多值错误 [英] GO: multiple-value in single-value context ERROR
本文介绍了GO:单值上下文中的多值错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
多值fmt.Println()在单值上下文中
我试图创建一个函数,它接受可变数量的int并在每个变量上打印
$ b
GO:
包主
导入(
fmt
)
func main(){
slice:= [] int {1,3,4,5}
vf(slice ...)
}
func vf(a ... int)int {
if len(a)== 0 {
返回0
}
var x int
for _,v:= range a {
x = fmt.Println(v)
}
return x
}
嗯有什么不对?
解决方案
查看 http://godoc.org/fmt#Println p>
fmt.Println
返回多个值.. int和and error:
func Println(a ... interfa你只是分配给int。你可能只是分配给int。试试这个:
package main
import(
fmt
)
func main(){
slice:= [] int {1,3,4,5}
vf(slice ...)
}
func vf(a ... int)int {
if len(a)== 0 {
return 0
}
var x int
for _,v:= range a {
x,_ = fmt.Println(v)
}
return x
}
I got this error while compiling my GO code:
multiple-value fmt.Println() in single-value context
I'm trying to create a function that takes in variable number of ints and prints each variable on a line.
GO:
package main
import (
"fmt"
)
func main() {
slice := []int{1,3,4,5}
vf(slice...)
}
func vf(a ...int) int {
if len(a)==0 {
return 0
}
var x int
for _, v := range a {
x = fmt.Println(v)
}
return x
}
Hmm what's wrong?
解决方案
Check out http://godoc.org/fmt#Println
fmt.Println
returns multiple values.. an int and and error:
func Println(a ...interface{}) (n int, err error)
You are only assigning to the int. try this:
package main
import (
"fmt"
)
func main() {
slice := []int{1,3,4,5}
vf(slice...)
}
func vf(a ...int) int {
if len(a)==0 {
return 0
}
var x int
for _, v := range a {
x, _ = fmt.Println(v)
}
return x
}
这篇关于GO:单值上下文中的多值错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文