Rumah >pembangunan bahagian belakang >Golang >Adakah Go Menyokong Parameter Dinamakan dalam Panggilan Fungsi?

Adakah Go Menyokong Parameter Dinamakan dalam Panggilan Fungsi?

Linda Hamilton
Linda Hamiltonasal
2024-12-11 05:43:10580semak imbas

Does Go Support Named Parameters in Function Calls?

Parameter Dinamakan dalam Fungsi Go

Dalam Go, parameter fungsi biasanya diluluskan mengikut nilai dan susunan argumen mesti sepadan dengan susunan daripada parameter. Ini kadangkala boleh menyukarkan untuk menghantar argumen kepada fungsi dengan senarai parameter yang panjang atau kompleks.

Menggunakan Parameter Dinamakan

Parameter bernama tidak disokong dalam fungsi Go. Ini bermakna anda tidak boleh menentukan nama parameter semasa memanggil fungsi. Sebaliknya anda mesti menghantar nilai dalam susunan yang diharapkan oleh fungsi.

Contoh

Pertimbangkan fungsi berikut:

MyFunction(name, address, nick string, age, value int)

Untuk memanggil ini berfungsi dengan hujah ("Bob", "New York", "Builder", 30, 1000), anda akan tulis:

MyFunction("Bob", "New York", "Builder", 30, 1000)

Menggunakan Struktur

Jika anda perlu menghantar nilai kepada fungsi dengan cara yang lebih berstruktur, anda boleh menggunakan struktur tersuai untuk membalut parameter .

type Params struct {
    Name    string
    Address string
    Nick    string
    Age     int
    Value   int
}

// ...

MyFunction(Params{
    Name:    "Bob",
    Address: "New York",
    Nick:    "Builder",
    Age:     30,
    Value:   1000,
})

Menggunakan Pembantu Fungsi

Jika anda tidak boleh mengubah suai tandatangan fungsi, anda boleh mencipta fungsi pembantu yang menerima struktur sebagai parameter dan memanggil fungsi asal dengan hujah yang sesuai.

// Helper function
func MyFunctionHelper(params Params) {
    MyFunction(params.Name, params.Address, params.Nick, params.Age, params.Value)
}

// ...

MyFunctionHelper(Params{
    Name:    "Bob",
    Address: "New York",
    Nick:    "Builder",
    Age:     30,
    Value:   1000,
})

Atas ialah kandungan terperinci Adakah Go Menyokong Parameter Dinamakan dalam Panggilan Fungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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