Perbandingan jenis fungsi Dalam bahasa Go, jenis fungsi boleh dibandingkan berdasarkan parameternya dan jenis nilai pulangan. Dua jenis fungsi adalah sama jika tandatangan mereka adalah sama, sebaliknya, mereka tidak sama.
Dalam Go, jenis fungsi ialah jenis khas yang mewakili tandatangan fungsi. Ia terdiri daripada jenis parameter input dan jenis parameter output fungsi. Jenis fungsi boleh dibandingkan seperti jenis lain.
func(x int) int func(x string) string
Dua jenis fungsi ini mempunyai jenis parameter input yang berbeza, jadi ia adalah jenis yang berbeza.
Mari kita pertimbangkan dua fungsi berikut:
func Add(x, y int) int { return x + y } func Subtract(x, y int) int { return x - y }
Tandatangan kedua-dua fungsi ini adalah sama, jadi ia adalah jenis yang sama.
Untuk membandingkan dua jenis fungsi, anda boleh menggunakan operator ==
dan !=
. Jenis fungsi adalah sama jika tandatangan mereka adalah sama. Jika tidak, mereka tidak sama. ==
和 !=
运算符。如果函数类型的签名相同,则它们相等。否则,它们不相等。
以下代码比较两个函数类型的相等性:
func main() { addType := func(x, y int) int { return x + y } subType := func(x, y int) int { return x - y } if addType == subType { fmt.Println("函数类型相等") } else { fmt.Println("函数类型不相等") } }
这段代码将打印以下输出:
函数类型不相等
函数类型在 Go 中可以像其他类型一样被比较。使用 ==
和 !=
==
dan !=
. 🎜Atas ialah kandungan terperinci Bagaimana untuk membandingkan dua jenis fungsi di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!