Funciones Variádicas (Variadic Functions)

¿Qué es una función variádica (variadic function)?

Las funciones variádicas (variadic functions) son aquellas que pueden recibir un numero indefinido de argumentos. La sintaxis usa como ultimo parámetro una variable con el prefijo ... antes de su tipo, que indica que todos los valores que se envíen formaran serán almacenados como parte de esta variable.

Ejemplo de una función variádica en Go

package main

import "fmt"

func sumar(numeros ...int) int {
    // el total inicial es 0
    total := 0
    // recorrer todos los numeros
    for _, numero := range numeros {
        // en cada iteración sumar al total el valor del numero
        total = numero + total
    }
    // retornar el valor total
    return total
}

func main() {
    fmt.Println(sumar(2))
    fmt.Println(sumar(2, 2))
    fmt.Println(sumar(5, 4, 3))
}
2
4
12

En el ejemplo anterior hemos creado una función que es capaz de recibir N cantidad de enteros y sumarlos entre si. Esto se entenderá mas adelante cuando se utilice el bucle for.