Golang Anonyme Funktion

Golang Anonyme Funktion

Ein anonymer bezieht sich auf eine Funktion, die keinen Namen hat. Diese Art von Funktion wird auch als Funktion wörtlich oder eine Lambda -Funktion in anderen Programmiersprachen bezeichnet.

Mit Go können Sie inline- oder anonyme Funktionen für kurzfristige Verwendung erstellen, wie wir in diesem Tutorial zeigen werden.

Golang deklarieren anonyme Funktion

Wir können eine anonyme Funktion in gleichen wie wir eine normale Funktion deklarieren würden.

Zum Beispiel erstellt der folgende Code eine anonyme Funktion in der Hauptfunktion.

Paket Main
importieren "fmt"
func main ()
func ()
fmt.Println ("Ich habe keinen Namen")

Golang ruft eine anonyme Funktion auf

Sobald wir eine anonyme Funktion deklarieren, können wir sofort aufrufen, wie im folgenden Beispiel gezeigt:

Paket Main
importieren "fmt"
func main ()
func ()
fmt.Println ("Ich habe keinen Namen")
() // auf Func aufrufen

Der obige Code sollte den Code in der anonymen Funktion ausführen und die Zeichenfolge als Folge zurückgeben:

$ go run anonymous_functions.gehen
Ich habe keinen Namen

Anonyme Funktion Golang zuweisen Variable

Wir können einer Variablen auch eine anonyme Funktion zuweisen und sie mit dem variablen Namen aufrufen. Betrachten Sie das folgende Beispiel:

Paket Main
importieren "fmt"
func main ()
STR: = func ()
fmt.Println ("hi")

str ()

Im obigen Beispiel erstellen wir eine Variable namens „Str“ und weisen sie einer anonymen Funktion zu. Wir können den variablen Namen verwenden, um die Funktion aufzurufen.

Golang gibt Argumente an eine anonyme Funktion weiter

Wie eine typische Funktion in GO können wir eine beliebige Anzahl von Argumenten (aller Art) an eine anonyme Funktion übergeben, wie im folgenden Beispielcode gezeigt:

Paket Main
importieren "fmt"
func main ()
func (a float64)
fmt.Printf ("Ergebnis: %f", a*3.141)
(7.0)

Im obigen Beispiel übergeben wir ein Argument vom Typ Float64 an eine anonyme Funktion. Sobald wir die Funktion aufrufen, übergeben wir das Erfordernisse Argument.

Der obige Code gibt zurück:

Ergebnis: 21.987000

Golang gibt eine anonyme Funktion aus einer anderen Funktion zurück

Mit Go können Sie auch eine anonyme Funktion aus einer anderen Funktion zurückgeben. Ein Beispiel ist wie im folgenden Code gezeigt:

Paket Main
importieren "fmt"
func main ()
anon_func: = func () func (x int)
Ergebnis: = func (x int)
fmt.Println ("Ergebnis:", x)

Rückgabeergebnis

y: = anon_func ()
y (2)

Der obige Code gibt 2 zurück.

Abschluss

Dieser Leitfaden führt Sie durch die Grundlagen der Arbeit mit anonymen Funktionen in der Go -Programmiersprache.