繁体   English   中英

单值上下文中的多值ERROR

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

编译GO代码时出现此错误:

multiple-value fmt.Println() in single-value context

我正在尝试创建一个函数,它接受可变数量的整数并在一行上打印每个变量。

走:

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
}

嗯有什么不对?

查看http://godoc.org/fmt#Println

fmt.Println返回多个值..一个int和错误:

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

您只是分配给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
}

暂无
暂无

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

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