Maison >développement back-end >Golang >Go prend-il en charge les expressions Lambda ?
Expressions lambda dans Go
Q : Savez-vous si Go prend en charge les expressions lambda ?
R : Oui, Go prend en charge les expressions lambda, également appelées fonctions anonymes. Il s'agit d'une fonction anonyme qui peut être définie et utilisée sans déclaration formelle. Dans Go, les expressions lambda sont définies à l'aide de la syntaxe :
func (parameters) (return type) { code }
Voici un exemple :
package main import fmt "fmt" type Stringy func() string func foo() string { return "Stringy function" } func takesAFunction(foo Stringy) { fmt.Printf("takesAFunction: %v\n", foo()) } func returnsAFunction() Stringy { return func() string { fmt.Printf("Inner stringy function\n") return "bar" // have to return a string to be stringy } } func main() { takesAFunction(foo) var f Stringy = returnsAFunction() f() var baz Stringy = func() string { return "anonymous stringy\n" } fmt.Printf(baz()) }
Dans cet exemple, foo() est une fonction nommée standard et la fonction sans nom attribués à f et baz sont des exemples d'expressions lambda.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!