Golang anonym funksjon

Golang anonym funksjon

En anonym refererer til en funksjon som ikke har et navn. Denne typen funksjoner er også kjent som en funksjon bokstavelig eller en lambda -funksjon i andre programmeringsspråk.

GO lar deg lage in-line eller anonyme funksjoner for kortsiktig bruk som vi vil vise i denne opplæringen.

Golang erklærer anonym funksjon

Vi kan erklære en anonym funksjon i gå på samme måte som vi ville når vi erklærer en normal funksjon.

For eksempel oppretter koden nedenfor en anonym funksjon i hovedfunksjonen.

pakkehoved
Importer "FMT"
func main ()
func ()
fmt.Println ("Jeg har ikke et navn")

Golang påkaller anonym funksjon

Når vi erklærer en anonym funksjon, kan vi påkalle umiddelbart, som vist i eksemplet nedenfor:

pakkehoved
Importer "FMT"
func main ()
func ()
fmt.Println ("Jeg har ikke et navn")
() // Invoke func

Ovennevnte kode skal utføre koden i den anonyme funksjonen og returnere strengen som:

$ GO RUN ANONYMOUS_FUNCTIONS.gå
Jeg har ikke noe navn

Golang anonym funksjon tilordne variabel

Vi kan også tilordne en anonym funksjon til en variabel og ringe den ved hjelp av variabelnavnet. Tenk på eksemplet nedenfor:

pakkehoved
Importer "FMT"
func main ()
str: = func ()
fmt.Println ("Hei")

Str ()

I eksemplet over lager vi en variabel kalt “Str” og tildeler den til en anonym funksjon. Vi kan bruke variabelnavnet til å kalle funksjonen.

Golang pass argumenter til anonym funksjon

Som en typisk funksjon i Go, kan vi gi et hvilket som helst antall argumenter (av alle typer) til en anonym funksjon som vist i eksempelkoden nedenfor:

pakkehoved
Importer "FMT"
func main ()
func (en float64)
fmt.Printf ("Resultat: %f", a*3.141)
(7.0)

I eksemplet over gir vi et argument for type float64 til en anonym funksjon. Når vi kaller funksjonen, består vi kravet.

Koden over returnerer:

Resultat: 21.987000

Golang returnerer anonym funksjon fra en annen funksjon

Go lar deg også returnere en anonym funksjon fra en annen funksjon. Et eksempel er som vist i koden nedenfor:

pakkehoved
Importer "FMT"
func main ()
anon_func: = func () func (x int)
Resultat: = func (x int)
fmt.Println ("Resultat:", x)

Returresultat

y: = anon_func ()
y (2)

Ovennevnte kode returnerer 2.

Konklusjon

Denne guiden tar deg gjennom det grunnleggende om å jobbe med anonyme funksjoner i Go -programmeringsspråket.