Heim > Backend-Entwicklung > Golang > Wie kann ich Go-Funktionsparameter mithilfe von Feldnamen initialisieren?

Wie kann ich Go-Funktionsparameter mithilfe von Feldnamen initialisieren?

Linda Hamilton
Freigeben: 2024-12-15 04:22:13
Original
653 Leute haben es durchsucht

How Can I Initialize Go Function Parameters Using Field Names?

Funktionsfelder in Go initialisieren

In Go ist es nicht möglich, beim Aufruf einer Funktion benannte Parameter anzugeben. Stattdessen müssen Argumente in der erwarteten Reihenfolge aufgelistet werden. Es gibt jedoch zwei Ansätze, um eine Initialisierung mithilfe von Feldnamen zu erreichen:

Verwenden einer Struktur

Die direkteste Methode besteht darin, eine Struktur zu definieren, die die Parameter der Funktion umfasst, und eine Instanz der Struktur an zu übergeben die Funktion:

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

func MyFunction(p Params) {
    // Operations using p.Name, p.Address, etc.
}

func main() {
    MyFunction(Params{
        Name:    "Bob",
        Address: "New York",
        Nick:    "Builder",
        Age:     30,
        Value:   1000,
    })
}
Nach dem Login kopieren

Verwenden einer Hilfsfunktion

Wenn eine Änderung der ursprünglichen Funktion nicht möglich ist, a Es kann eine Hilfsfunktion erstellt werden, die eine Struktur akzeptiert und die entsprechenden Feldwerte an die Originalfunktion weiterleitet:

func MyFunction(name, address, nick string, age, value int) {
    // Operations using name, address, etc.
}

func MyFunction2(p Params) {
    MyFunction(p.Name, p.Address, p.Nick, p.Age, p.Value)
}

func main() {
    MyFunction2(Params{
        Name:    "Bob",
        Address: "New York",
        Nick:    "Builder",
        Age:     30,
        Value:   1000,
    })
}
Nach dem Login kopieren

Mit beiden Methoden können Sie Funktionsparameter mithilfe von Feldnamen initialisieren, was Flexibilität und verbesserte Lesbarkeit des Codes bietet.

Das obige ist der detaillierte Inhalt vonWie kann ich Go-Funktionsparameter mithilfe von Feldnamen initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage