golang - 如何给go不定参数的函数传递一个数组参数?

浏览:47日期:2023-06-30

问题描述

正确

err = c.Insert(moejson.Mjson{'name': 'm1'}, moejson.Mjson{'name': 'm2'})

失败了

inserter:=[2]Bson.M{moejson.Mjson{'name': 'm1'}, moejson.Mjson{'name': 'm2'}}err = c.Insert(inserter)

问题解答

回答1:

使用golang的slice打散语法糖,将数组对应到可变参数列表上, 参加下面的main函数中slice的传递方式;

λ ~/workingspace/ cat x.go package mainimport 'fmt'func show(args ...int){ for _, v := range args {fmt.Println(v) }}func main() { slice:=[]int{1,2,3,4} show(slice...)}λ ~/workingspace/ go run x.go 1234λ ~/workingspace/回答2:

Inserter ...

相关文章: