Función anónima de golang

Función anónima de golang

Un anónimo se refiere a una función que no tiene un nombre. Este tipo de función también se conoce como función literal o una función lambda en otros lenguajes de programación.

GO le permite crear funciones en línea o anónimas para su uso a corto plazo como mostraremos en este tutorial.

Golang declara la función anónima

Podemos declarar una función anónima de la misma manera que lo haríamos al declarar una función normal.

Por ejemplo, el siguiente código crea una función anónima dentro de la función principal.

paquete principal
importar "fmt"
func Main ()
func ()
fmt.Println ("No tengo nombre")

Golang invoca la función anónima

Una vez que declaramos una función anónima, podemos invocar de inmediato, como se muestra en el ejemplo a continuación:

paquete principal
importar "fmt"
func Main ()
func ()
fmt.Println ("No tengo nombre")
() // Invoke FUNC

El código anterior debe ejecutar el código dentro de la función anónima y devolver la cadena como:

$ Go Run Anonymous_Functions.ir
No tengo nombre

Golang Función Anónima Asignar variable

También podemos asignar una función anónima a una variable y llamarla usando el nombre de la variable. Considere el ejemplo a continuación:

paquete principal
importar "fmt"
func Main ()
str: = func ()
fmt.Println ("hola")

str ()

En el ejemplo anterior, creamos una variable llamada "STR" y la asignamos a una función anónima. Podemos usar el nombre de la variable para llamar a la función.

Golang pasa argumentos a la función anónima

Al igual que una función típica en GO, podemos pasar cualquier número de argumentos (de cualquier tipo) a una función anónima como se muestra en el código de ejemplo a continuación:

paquete principal
importar "fmt"
func Main ()
func (a float64)
fmt.Printf ("resultado: %f", a*3.141)
(7.0)

En el ejemplo anterior, pasamos un argumento de tipo float64 a una función anónima. Una vez que llamamos a la función, pasamos el argumento de requerimiento.

El código anterior devuelve:

Resultado: 21.987000

Golang devuelve la función anónima de otra función

Go también le permite devolver una función anónima de otra función. Un ejemplo es como se muestra en el siguiente código:

paquete principal
importar "fmt"
func Main ()
anon_func: = func () func (x int)
resultado: = func (x int)
fmt.Println ("Resultado:", x)

Resultado de retorno

y: = anon_func ()
y (2)

El código anterior devuelve 2.

Conclusión

Esta guía lo lleva a través de los conceptos básicos de trabajar con funciones anónimas en el lenguaje de programación GO.