append([]int{1,2}, []int{3,4}...)
fonctionnera. Passer des arguments à ...
paramètres.
Si f
est variadique avec un paramètre final p
de type ...T
alors dans f
le type de p
est équivalent au type []T
.
Si f
est invoqué sans arguments réels pour p
la valeur passée à p
est nil
.
Sinon, la valeur transmise est une nouvelle tranche de type []T
avec un nouveau tableau sous-jacent dont les éléments successifs sont les arguments réels, qui doivent tous être assignables à T
. La longueur et la capacité de la tranche sont donc le nombre d'arguments liés à p
et peut différer pour chaque site d'appel.
Étant donné la fonction et les appels
func Greeting(prefix string, who ...string)
Greeting("nobody")
Greeting("hello:", "Joe", "Anna", "Eileen")