猿问

如何在 Go 中将可变参数从一个函数传递到另一个函数

我试图在 Go 中将可变参数从一个函数传递到另一个函数。基本上是这样的:


func CustomPrint(a ...interface{}) (int, error) {

    // ...

    // Do something else

    // ...


    return fmt.Print(a)

}

但是,当我这样做时,它a会像切片一样打印,而不是像参数列表一样。IE


fmt.Print("a", "b", "c") // Prints "a b c"

CustomPrint("a", "b", "c") // Print "[a b c]"

知道如何实现这一点吗?


慕标5832272
浏览 286回答 1
1回答

墨色风雨

使用...切片调用时使用:package mainimport "fmt"func CustomPrint(a ...interface{}) (int, error) {     return fmt.Print(a...)}func main() {     CustomPrint("Hello", 1, 3.14, true)}
随时随地看视频慕课网APP

相关分类

Go
我要回答