用变量参数调用golang println

时间:2013-12-03 13:50:23

标签: go println

我有以下代码来打印n行以进行调试。 output()打印args的地址而不是参数。如何解决?

var outputMax = 10
var outputCnt = 0

func output(args ...interface{}) {
    outputCnt++
    if(outputCnt < outputMax) { println(args) }
}

func main() {
    for i := 0; i < 5; i++ {
        output("Value of i is now:", i)
    }
}

1 个答案:

答案 0 :(得分:4)

调用varargs函数的常用方法是这样的:

func output(args ...interface{}) {
    println(args...)
}

但是,这会给您invalid use of ... with builtin println编译错误。如果您切换到fmt.Println(),它应该可以正常工作。