Rumah > pembangunan bahagian belakang > Golang > Bolehkah Go Functions Menerima Bilangan Pembolehubah Argumen?

Bolehkah Go Functions Menerima Bilangan Pembolehubah Argumen?

Linda Hamilton
Lepaskan: 2024-12-07 00:22:10
asal
910 orang telah melayarinya

Can Go Functions Accept a Variable Number of Arguments?

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))
}
Salin selepas log masuk

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,))
}
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan