Rumah > Artikel > pembangunan bahagian belakang > Prinsip reka bentuk fungsi Golang didedahkan
Prinsip reka bentuk fungsi Go termasuk: tandatangan fungsi mengisytiharkan nama fungsi, parameter dan jenis nilai pulangan parameter membolehkan panggilan tanpa mengetahui bilangan parameter boleh dikembalikan, dan penamaan dipermudahkan dengan mengembalikan nilai mengikut nama; jenis fungsi boleh digunakan untuk mencipta dan memindahkan fungsi. Contoh reka bentuk berfungsi dalam amalan ialah jumlah fungsi penjumlahan, yang menggunakan argumen variadic dan penjumlahan gelung.
Dalam bahasa Go, fungsi ialah modul asas untuk membina program. Memahami prinsip reka bentuknya adalah penting untuk menulis kod yang cekap dan boleh diselenggara.
Tandatangan fungsi mengisytiharkan nama, jenis parameter dan jenis nilai pulangan fungsi. Ia mengikut format berikut:
func functionName(parameter_list) (return_value_list)
Contohnya:
func add(x int, y int) int { return x + y }
Fungsi Go menyokong argumen variadic, membenarkan fungsi dipanggil tanpa mengetahui bilangan argumen. Parameter pembolehubah diwakili oleh simbol ...
dan mestilah parameter terakhir dalam senarai parameter.
func sum(numbers ...int) int { total := 0 for _, number := range numbers { total += number } return total }
Fungsi Go boleh mengembalikan berbilang nilai. Senarai jenis pemulangan mesti disertakan dalam kurungan.
func divide(x int, y int) (quotient int, remainder int) { quotient = x / y remainder = x % y return }
Anda boleh menggunakan nilai pulangan nama untuk memudahkan penamaan nilai pulangan. Nilai pulangan nama mestilah nilai pulangan terakhir dan jenisnya mestilah sama dengan jenis pulangan sebelumnya.
func swap(x, y int) (y, x) { return }
Fungsi Go juga jenis. Kita boleh mencipta jenis fungsi dan menggunakannya sebagai parameter atau mengembalikan nilai fungsi lain.
type SumFunc func(x, y int) int func createSumFunc() SumFunc { return func(x, y int) int { return x + y } }
Berikut adalah kes praktikal menggunakan reka bentuk fungsi:
package main import ( "fmt" ) func main() { numbers := []int{1, 2, 3, 4, 5} total := sum(numbers...) fmt.Println("Total:", total) } func sum(numbers ...int) int { total := 0 for _, number := range numbers { total += number } return total }
Atas ialah kandungan terperinci Prinsip reka bentuk fungsi Golang didedahkan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!