Les fonctions anonymes en Go sont très utiles. Vous trouverez ci-dessous la syntaxe, l'utilisation et un exemple d'utilisation de la fonction anonyme dans Golang .

Une fonction anonyme est une fonction qui n'a pas de nom. C'est utile lorsque vous souhaitez créer une fonction en ligne. En Go, les fonctions anonymes peuvent également former une fermeture. Les fonctions anonymes sont également appelées littéraux de fonction.
Par exemple:
package main
import "fmt"
func main() {
// Hàm ẩn danh
func() {
fmt.Println("Welcome! to Quantrimang.com")
}()
}
Résultat:
Welcome! to Quantrimang.com
Syntaxe:
func(parameter_list)(return_type) {
// code..
// Dùng lệnh return nếu return_type được đưa ra
// nếu return_type không được cung cấp, thì không
// dùng lệnh return
return
}()
Attribuer une variable
Vous pouvez attribuer une fonction anonyme à une variable. Cette variable peut alors être appelée comme une fonction normale.
package main
import "fmt"
func main() {
// Gán một hàm ẩn danh cho một biến
value := func() {
fmt.Println("Welcome! to Quantrimang.com")
}
value()
}
Résultat:
Welcome! to Quantrimang.com
Passer en argument
Vous pouvez également passer une fonction anonyme comme argument à une autre fonction.
package main
import "fmt"
// Chuyển hàm ẩn danh làm đối số
func GFG(i func(p, q string) string) {
fmt.Println(i("Geeks", "for"))
}
func main() {
value := func(p, q string) string {
return p + q + "Geeks"
}
GFG(value)
}
Résultat:
GeeksforGeeks
Renvoyer une fonction anonyme
Vous pouvez renvoyer une fonction anonyme à partir d'une autre fonction.
package main
import "fmt"
// Trả về hàm ẩn danh
func GFG() func(i, j string) string {
myf := func(i, j string) string {
return i + j + "GeeksforGeeks"
}
return myf
}
func main() {
value := GFG()
fmt.Println(value("Welcome ", "to "))
}
Résultat:
Welcome to GeeksforGeeks
Conclure
Les fonctions anonymes dans Golang sont très flexibles et puissantes. Ils peuvent être utilisés pour créer des fonctions en ligne, des fermetures et même pour passer et renvoyer des fonctions. Comprendre comment les utiliser efficacement peut considérablement améliorer vos capacités de programmation en Go.