我有以下Golang main
函数,其中调用另一个变量函数variadicFunc
,我需要传递不同数据类型的参数。代码如下。
package main
import "fmt"
func main() {
variadicFunc("hello", "Change", "the ", "World using Golang", 1, 2, 3, 4)
}
func variadicFunc(messages ...string) {
for _, i := range messages {
fmt.Println(i)
}
}
当运行程序时,抛出错误。
不能在variadicFunc
的参数中使用1(类型int)作为类型字符串
答案 0 :(得分:3)
您可以使用interface
package main
import "fmt"
func main() {
variadicFunc("hello", "Change", "the ", "World using Golang", 1, 2, 3, 4)
}
func variadicFunc(messages ...interface{}) {
for _, i := range messages {
fmt.Println(i)
}
}