Passer des paramètres aux fermetures de fonctions
Dans Go, le choix entre créer une fonction anonyme avec un paramètre ou une fermeture peut impacter le partage de variables et comportement de la fonction.
Paramètres vs fermetures
Quand utiliser les paramètres
Quand utiliser les fermetures
Exemple : fermetures et paramètres
Considérez les exemples de code suivants qui illustrent la différence entre les fermetures et les paramètres :
Fermeture :
for i := 0; i < 3; i++ { go func() { fmt.Println(i) }() }
Paramètre :
for i := 0; i < 3; i++ { go func(v int) { fmt.Println(v) }(i) }
Résultat :
Conclusion
Le choix entre les paramètres et les fermetures dépend du comportement souhaité et des exigences de partage variables. Lorsqu'une fonction a besoin d'un instantané d'une valeur, les paramètres sont préférés. Les fermetures sont utiles pour accéder et modifier des variables dans la portée englobante ou pour les partager sur plusieurs invocations.
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!