La función que llamó con el número variable de argumentos se conoce como función variádica. O, en otras palabras, un usuario puede pasar cero o más argumentos en la función variádica. fmt.Printf es el ejemplo de la función variádica, requiere un argumento fijo al principio, después de eso puede aceptar cualquier cantidad de argumentos.
Puntos importantes:
- En la declaración de la función variádica, el tipo del último parámetro va precedido de puntos suspensivos, es decir, ( … ). Indica que la función se puede llamar en cualquier número de parámetros de este tipo.
Sintaxis:
function function_name(para1, para2...type)type{ // code... }
- Dentro de la función …el tipo se comporta como un segmento. Por ejemplo, supongamos que tenemos una firma de función, es decir, add(b…int)int, ahora el parámetro a de type[]int.
- También puede pasar un segmento existente en una función variádica. Para hacer esto, pasamos una porción de la array completa a la función como se muestra en el Ejemplo 2 a continuación.
- Cuando no pasa ningún argumento en la función variádica, entonces el segmento dentro de la función es nulo.
- Las funciones variádicas se utilizan generalmente para dar formato a strings.
- También puede pasar varios segmentos en la función variádica.
- No puede usar el parámetro variádico como valor de retorno, pero puede devolverlo como un segmento.
Ejemplo 1:
C
// Go program to illustrate the // concept of variadic function package main import( "fmt" "strings" ) // Variadic function to join strings func joinstr(element...string)string{ return strings.Join(element, "-") } func main() { // zero argument fmt.Println(joinstr()) // multiple arguments fmt.Println(joinstr("GEEK", "GFG")) fmt.Println(joinstr("Geeks", "for", "Geeks")) fmt.Println(joinstr("G", "E", "E", "k", "S")) }
Producción:
GEEK-GFG Geeks-for-Geeks G-E-E-k-S
Ejemplo 2:
C
// Go program to illustrate the // concept of variadic function package main import( "fmt" "strings" ) // Variadic function to join strings func joinstr(element...string)string{ return strings.Join(element, "-") } func main() { // pass a slice in variadic function element:= []string{"geeks", "FOR", "geeks"} fmt.Println(joinstr(element...)) }
Producción:
geeks-FOR-geeks
Cuando usamos una función Variádica:
- La función variádica se usa cuando desea pasar un segmento en una función.
- La función variadica se usa cuando no sabemos la cantidad de parámetros.
- Cuando usa la función variádica en su programa, aumenta la legibilidad de su programa.
Publicación traducida automáticamente
Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA