Adakah Go Menyokong Fungsi dengan Argumen Boleh Ubah?
Dalam Go, anda boleh mencipta fungsi yang boleh menerima bilangan argumen yang berubah-ubah, dikenali sebagai fungsi variadik. Fleksibiliti ini membolehkan anda membuat generalisasi fungsi untuk mengendalikan sebarang bilangan input.
Contoh:
Pertimbangkan coretan kod berikut di mana anda bertujuan untuk mentakrifkan fungsi Tambah yang menerima bilangan integer yang tidak diketahui:
func Add(num1... int) int { return args } func main() { fmt.Println("Hello, playground") fmt.Println(Add(1, 3, 4, 5)) }
Dalam kod ini, fungsi Tambah ditakrifkan dengan ...int sebagai jenis parameter terakhirnya. Sintaks ... menunjukkan bahawa parameter ini boleh menerima berbilang nilai jenis yang ditentukan.
Penyelesaian:
Seperti yang dinyatakan dalam jawapan yang disediakan, sintaks untuk parameter variadic dalam Go ialah ...int, bukan hanya int. Kod yang disemak di bawah menunjukkan penggunaan yang betul:
func Add(num1... int) int { // Sum the numbers and return the result sum := 0 for _, n := range num1 { sum += n } return sum } func main() { fmt.Println("Hello, playground") fmt.Println(Add(1, 3, 4, 5,)) }
Dengan pengubahsuaian ini, anda boleh menggunakan fungsi Tambah dengan sebarang bilangan integer sebagai argumen, memberikan fleksibiliti yang anda cari.
Atas ialah kandungan terperinci Bolehkah Go Functions Menerima Bilangan Pembolehubah Argumen?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!