Heim  >  Artikel  >  Backend-Entwicklung  >  Was bedeutet der unbestimmte Parametertyp in der Go-Sprache?

Was bedeutet der unbestimmte Parametertyp in der Go-Sprache?

王林
王林Original
2021-02-07 14:36:383152Durchsuche

Der unbestimmte Parametertyp in der Go-Sprache bedeutet, dass die Anzahl der von der Funktion übergebenen Parameter eine unbestimmte Zahl ist. Das Codebeispiel lautet wie folgt: „func Add(a int, args ...int) (result int)“ .

Was bedeutet der unbestimmte Parametertyp in der Go-Sprache?

Die Betriebsumgebung dieses Artikels: Windows 10-System, Go 1.11.2, Thinkpad T480-Computer.

Unbestimmte Parameter bedeuten, dass die Anzahl der von der Funktion übergebenen Parameter eine unbestimmte Zahl ist.

package main
 
import (
    "fmt"
)
 
 
//不定参数函数
func Add(a int, args ...int) (result int) {
    result += a
    for _, arg := range args {
        result += arg
    }
    return
}
 
func main() {
    fmt.Println(Add(1, 2, 3, 4, 5, 6, 7, 8, 9, 10))

Die Argumente im Code sind ein Array-Slice und können nur am Ende des Parameters platziert werden.

Verwandte Erweiterungseinführung:

Go (auch bekannt als Golang) ist eine von Google entwickelte statisch stark typisierte, kompilierte, gleichzeitige und Garbage-Collection-Programmiersprache.

Robert Griesemer, Rob Pike und Ken Thompson begannen im September 2007 mit der Entwicklung von Go, später schlossen sich Ian Lance Taylor und Russ Cox dem Projekt an. Go wurde auf Basis des Inferno-Betriebssystems entwickelt. Go wurde im November 2009 offiziell angekündigt, wurde zu einem Open-Source-Projekt und wurde auf Linux- und Mac OS Im Jahr 2016 wurde Go vom Software-Bewertungsunternehmen TIOBE zur „TIOBE's Best Language of 2016“ gewählt. Derzeit veröffentlicht Go alle sechs Monate eine Second-Level-Version (d. h. ein Upgrade von a.x auf a.y).

Gos Syntax ähnelt der C-Sprache, aber die Deklaration von Variablen ist anders. Go unterstützt die Garbage Collection. Das Parallelmodell von Go basiert auf Tony Halls Communicating Sequential Process (CSP). Zu den anderen Sprachen, die ein ähnliches Modell verwenden, gehören Occam und Limbo, es verfügt jedoch auch über Funktionen von Pi-Operationen, wie z. B. die Kanalübertragung. Die Plugin-Unterstützung ist in Version 1.8 geöffnet, wodurch einige Funktionen nun dynamisch aus Go geladen werden können.

Im Vergleich zu C++ enthält Go keine Funktionen wie Aufzählung, Ausnahmebehandlung, Vererbung, Generika, Behauptungen, virtuelle Funktionen usw., fügt jedoch Unterstützung für Slice-Typ, Parallelität, Pipeline, Garbage Collection und Schnittstelle hinzu für andere Funktionen. Die Go 2.0-Version unterstützt Generika, steht der Existenz von Behauptungen jedoch ablehnend gegenüber und verteidigt außerdem, dass sie keine Typvererbung bietet.

Im Gegensatz zu Java verfügt Go über integrierte assoziative Arrays (auch Hashes oder Wörterbücher genannt), genau wie String-Typen.

Verwandte Empfehlungen: Golang-Tutorial

Das obige ist der detaillierte Inhalt vonWas bedeutet der unbestimmte Parametertyp in der Go-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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