Maison > Article > développement back-end > Exemples de code et analyse des meilleures pratiques des fonctions et fermetures anonymes Golang
Fonctions anonymes : les fonctions anonymes sont des fonctions sans nom et sont utilisées pour créer des fonctions ou des rappels ponctuels. Fermeture : une fermeture contient des fonctions anonymes et des références de variables externes, qui peuvent accéder et modifier des variables externes.
Fonctions anonymes et fermetures en langage Go
Que sont les fonctions anonymes ?
Les fonctions anonymes sont des fonctions sans nom, généralement utilisées pour créer des fonctions ou des rappels à usage unique.
Déclarer une syntaxe de fonction anonyme :
func(参数列表)(返回值列表) { 函数体 }
Exemple :
Mettre au carré une liste de nombres :
numbers := []int{1, 2, 3, 4, 5} result := map(func(n int) int { return n * n }, numbers)
Qu'est-ce qu'une fermeture ?
Une fermeture est une valeur de fonction qui contient une fonction anonyme et une référence de variable externe. Cela signifie que la fermeture peut accéder et modifier des variables externes.
Créer une syntaxe de fermeture :
func(参数列表)(返回值列表) { // 内部定义的变量 变量名 := 值 return func(闭包参数列表)(闭包返回值列表) { // 可以访问和修改内部变量 } }
Exemple :
Créer une fonction qui renvoie un mot répété un nombre spécifié de fois par page :
package main import "fmt" func makeRepeated(s string, n int) func() string { i := 0 return func() string { i++ return fmt.Sprintf("%s%d", s, i) } } func main() { repeat := makeRepeated("a", 5) fmt.Println(repeat()) fmt.Println(repeat()) }
Sortie :
a1 a2
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!