ฟังก์ชันที่ไม่ระบุชื่อใน Goมีประโยชน์มาก ด้านล่างนี้คือรูปแบบโครงสร้าง การใช้งาน และตัวอย่างการใช้ฟังก์ชันไม่ระบุชื่อใน Golang

ฟังก์ชันที่ไม่ระบุชื่อคือฟังก์ชันที่ไม่มีชื่อ มีประโยชน์เมื่อคุณต้องการสร้างฟังก์ชันอินไลน์ ใน Go ฟังก์ชันที่ไม่ระบุชื่อสามารถสร้างการปิดได้เช่นกัน ฟังก์ชันที่ไม่ระบุชื่อเรียกอีกอย่างหนึ่งว่าฟังก์ชันตัวอักษร
ตัวอย่างเช่น:
package main
import "fmt"
func main() {
// Hàm ẩn danh
func() {
fmt.Println("Welcome! to Quantrimang.com")
}()
}
ผลลัพธ์:
Welcome! to Quantrimang.com
รูปแบบประโยค :
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
}()
กำหนดตัวแปร
คุณสามารถกำหนดฟังก์ชั่นไม่ระบุชื่อให้กับตัวแปรได้ ตัวแปรนี้สามารถเรียกใช้ได้เหมือนกับฟังก์ชันปกติ
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()
}
ผลลัพธ์:
Welcome! to Quantrimang.com
ส่งต่อเป็นอาร์กิวเมนต์
คุณสามารถส่งฟังก์ชันนิรนามเป็นอาร์กิวเมนต์ไปยังฟังก์ชันอื่นได้
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)
}
ผลลัพธ์:
GeeksforGeeks
กลับฟังก์ชันที่ไม่ระบุชื่อ
คุณสามารถส่งคืนฟังก์ชันไม่ระบุชื่อจากฟังก์ชันอื่นได้
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 "))
}
ผลลัพธ์:
Welcome to GeeksforGeeks
สรุป
ฟังก์ชันที่ไม่ระบุชื่อในGolang มีความยืดหยุ่นและทรงพลังมาก สามารถใช้เพื่อสร้างฟังก์ชันอินไลน์ โคลเชอร์ และแม้กระทั่งส่งหรือส่งคืนฟังก์ชัน การเข้าใจวิธีการใช้งานอย่างมีประสิทธิภาพสามารถปรับปรุงความสามารถในการเขียนโปรแกรมในภาษา Go ของคุณได้อย่างมาก