Вопрос: Как работают variadic-параметры (...T) и как передать slice в variadic?
Go
Junior
Без компании
Вопрос: Как работают variadic-параметры (...T) и как передать slice в variadic?
Ответы
Variadic — это параметр, принимающий переменное количество аргументов, внутри функции он как slice.
```go
package main
import "fmt"
func sum(nums ...int) int {
total := 0
for _, n := range nums {
total += n
}
return total
}
func main() {
fmt.Println(sum(1, 2, 3))
s := []int{4, 5, 6}
fmt.Println(sum(s...)) // распаковка slice
}
```