Python と Ruby には、配列を引数として展開するための splat 演算子 (*) があります。Javascript には .apply() 関数があります。Go で配列/スライスを関数の引数として展開する方法はありますか? これに関するリソースがあれば、それもありがたいです!
次のような内容です:
func my_func(a, b int) (int) {
return a + b
}
func main() {
arr := []int{2,4}
sum := my_func(arr)
}
ベストアンサー1
C に似た vararg 構文を使用できます。
package main
import "fmt"
func my_func( args ...int) int {
sum := 0
for _,v := range args {
sum = sum + v
}
return sum;
}
func main() {
arr := []int{2,4}
sum := my_func(arr...)
fmt.Println("Sum is ", sum)
}
これで、好きなだけ合計することができます。関数...
を呼び出す後の部分が重要であることに注意してくださいmy_func
。
実行例:翻訳元