简体   繁体   English

单值上下文中的多值ERROR

[英]Multiple-value in single-value context ERROR

I got this error while compiling my GO code: 编译GO代码时出现此错误:

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 查看http://godoc.org/fmt#Println

fmt.Println returns multiple values.. an int and and error: fmt.Println返回多个值..一个int和错误:

func Println(a ...interface{}) (n int, err error)

You are only assigning to the int. 您只是分配给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
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM