Rumah >pembangunan bahagian belakang >Golang >Adakah Go Menggunakan Antara Muka Kosong atau Parameter Jenis untuk Fungsi Generik?
Fungsi Generik dalam Go
Dalam Go, konsep fungsi generik menemui pelaksanaannya melalui penggunaan antara muka kosong. Antara muka kosong, kerana tidak memerlukan sebarang pelaksanaan kaedah tambahan, mempunyai keupayaan untuk memegang sebarang jenis nilai. Ini membawa kepada persoalan sama ada ini berfungsi sebagai pendekatan Go kepada pelaksanaan fungsi generik atau jika wujud alternatif yang lebih sesuai.
Setakat Go 1.18, kaedah yang lebih moden dan eksplisit untuk mentakrifkan fungsi generik telah diperkenalkan. Ia memanfaatkan parameter jenis untuk menentukan jenis yang fungsi itu boleh beroperasi. Sebagai contoh, pertimbangkan fungsi generik berikut Cetak:
package main import ( "fmt" ) // T can be any type func Print[T any](s []T) { for _, v := range s { fmt.Print(v) } } func main() { // Passing list of string works Print([]string{"Hello, ", "world\n"}) // You can pass a list of int to the same function as well Print([]int{1, 2}) }
Output:
Hello, world 12
Kaedah ini menyediakan pengisytiharan fungsi generik yang lebih bersih dan lebih jelas, menjadikannya lebih mudah untuk difahami dan diselenggara pangkalan kod.
Atas ialah kandungan terperinci Adakah Go Menggunakan Antara Muka Kosong atau Parameter Jenis untuk Fungsi Generik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!