gpt4 book ai didi

戈朗 : Variable argument

转载 作者:IT王子 更新时间:2023-10-29 01:24:45 27 4
gpt4 key购买 nike

当我编译下面的程序时

func myPrint(v ...interface{}) {
fmt.Println("Hello", v...)
}
func main() {
myPrint("new", "world")
}

编译错误

too many arguments in call to fmt.Println

我认为 v... 将扩展为第二个、第三个参数,而 fmt.Println 会看到三项可变参数列表。我认为这相当于

fmt.Println("Hello", "new", "world")

为什么会报错。

最佳答案

试试这个。它将 Hello 添加到可变参数前面,然后使用 println 将它们全部打印出来。

package main

import "fmt"

func myPrint(v ...interface{}) {
a := append([]interface{}{"Hello"}, v...) // prepend "Hello" to variadics
fmt.Println(a...) // println the whole lot
}
func main() {
myPrint("new", "world")
}

关于戈朗 : Variable argument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33092994/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com