Rumah >pembangunan bahagian belakang >Golang >Apakah Parameter `...antara muka{}` (Antara Muka Variadik) dalam Go?
Memahami Maksud ...antara muka{} (Antara Muka Variadik)
Dalam coretan kod Go di bawah:
func DPrintf(format string, a ...interface{}) (n int, err error) { if Debug > 0 { n, err = fmt.Printf(format, a...) } return }
takrifan parameter a ...antara muka{} menimbulkan persoalan: apakah a dalam fungsi ini? Tiga titik di sini menunjukkan bahawa a ialah parameter variadik, membolehkan anda menghantar sebarang bilangan argumen kepada parameter ini.
Parameter a pada asasnya ialah kepingan jenis []antara muka{}. Apabila anda memanggil DPrintf, anda boleh menghantar berbilang argumen yang akan disimpan dalam kepingan. Contohnya:
DPrintf("Value: %v", 10)
Dalam panggilan ini, DPrintf menerima satu hujah (10) yang disimpan dalam kepingan.
Jenis ...antara muka{} bermaksud unsur-unsur daripada sekeping boleh daripada apa-apa jenis. Ini kerana antara muka{} ialah jenis antara muka paling umum dalam Go, membenarkan mana-mana jenis konkrit untuk melaksanakannya.
Faedah Menggunakan Parameter Variadik:
Tawaran parameter variadik beberapa faedah:
Contoh Penggunaan:
Berikut ialah satu lagi contoh bagaimana anda mungkin menggunakan parameter variadic:
func Min(nums ...int) int { if len(nums) == 0 { return 0 } min := nums[0] for _, num := range nums { if num < min { min = num } } return min }
Dalam fungsi ini, parameter nums ...int membolehkan anda melepasi sebarang bilangan integer. Fungsi kemudiannya mencari nilai minimum antara integer ini.
Atas ialah kandungan terperinci Apakah Parameter `...antara muka{}` (Antara Muka Variadik) dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!