Heim > Backend-Entwicklung > Golang > So initialisieren Sie Mitgliedsvariablen einer Struktur in der Go-Sprache

So initialisieren Sie Mitgliedsvariablen einer Struktur in der Go-Sprache

青灯夜游
Freigeben: 2021-06-07 15:31:21
Original
3435 Leute haben es durchsucht

Initialisierungsmethode: 1. Verwenden Sie zum Initialisieren die Anweisung „ins: = Strukturtypname {Feld 1: Wert, Feld 2: Wert, ...}“, die zum selektiven Füllen von Strukturen mit vielen Feldern geeignet ist „ins: = Strukturtypname {Wert von Feld 1, Wert von Feld 2,...}“-Anweisungsinitialisierung, geeignet für Strukturen mit weniger Feldern.

So initialisieren Sie Mitgliedsvariablen einer Struktur in der Go-Sprache

Die Betriebsumgebung dieses Tutorials: Windows 10-System, GO 1.11.2, Dell G3-Computer.

Strukturen können Mitgliedsvariablen beim Instanziieren direkt initialisieren. Es gibt zwei Formen der Initialisierung: Die Initialisierung in Form von Schlüssel-Wert-Paaren eignet sich zum selektiven Füllen von Feldern Die Listenform mit mehr Strukturen und mehreren Werten eignet sich für Strukturen mit weniger ausgefüllten Feldern.

Verwenden Sie ein „Schlüssel-Wert-Paar“, um die Struktur zu initialisieren.

Die Struktur kann ein „Schlüssel-Wert-Paar“ (Schlüssel-Wert-Paar) verwenden, um die Felder zu initialisieren „Wert“ des Schlüssels entspricht dem Wert, auf den das Feld initialisiert werden muss.

Das Ausfüllen von Schlüssel-Wert-Paaren ist optional und Felder, die nicht initialisiert werden müssen, müssen nicht in der Initialisierungsliste ausgefüllt werden.

Der Standardwert des Felds nach der Instanziierung der Struktur ist der Standardwert des Feldtyps. Der Wert ist beispielsweise 0, die Zeichenfolge ist „“ (leere Zeichenfolge), der Boolesche Wert ist falsch, der Zeiger ist Null. usw.

1) Schreibformat der Schlüssel-Wert-Paar-Initialisierungsstruktur

Das Format der Schlüssel-Wert-Paar-Initialisierung ist wie folgt:

ins := 结构体类型名{
    字段1: 字段1的值,
    字段2: 字段2的值,
    …
}
Nach dem Login kopieren

Im Folgenden finden Sie eine Beschreibung jedes Teils:

  • Strukturtyp: der Typ bei der Definition des Strukturnamens.

  • Feld 1, Feld 2: Feldnamen von Strukturelementen, Feldnamen können nur einmal in der Feldinitialisierungsliste der Strukturtypnamen erscheinen.

  • Der Wert von Feld 1, der Wert von Feld 2: der Anfangswert des Strukturelementfelds.

Schlüsselwerte werden durch :分隔,键值对之间以, getrennt.

2) Beispiel für die Verwendung von Schlüssel-Wert-Paaren zum Füllen einer Struktur

Das folgende Beispiel beschreibt die Beziehung zwischen Charakteren in der Familie, genau wie das Kinderlied: „Papas Papa ist Opa“, mehrstufige Kinder können sein Wird zwischen Zeichen verwendet. Um Assoziationen zu beschreiben und herzustellen, lautet der Code zum Füllen der Struktur mithilfe von Schlüssel-Wert-Paaren wie folgt:

type People struct {
    name  string
    child *People
}
relation := &People{
    name: "爷爷",
    child: &People{
        name: "爸爸",
        child: &People{
                name: "我",
        },
    },
}
Nach dem Login kopieren

Die Codebeschreibung lautet wie folgt:

  • Zeile 1 definiert die Personenstruktur.

  • Zeile 2, String-Feld der Struktur.

  • Zeile 3, das Strukturzeigerfeld der Struktur, der Typ ist *Personen.

  • Zeile 6: Nachdem die Relation die Adresse vom Typ „People“ übernimmt, wird eine Instanz vom Typ *People gebildet.

  • Zeile 8: Beim Initialisieren des Kindes wird ein Wert vom Typ *People benötigt und die Adresse wird zum Initialisieren eines People verwendet.

Tipps: Strukturmitglieder können nur Zeigertypen der Struktur enthalten, die zu Kompilierungsfehlern führen.

Verwenden Sie eine Liste mit mehreren Werten, um die Struktur zu initialisieren.

Die Go-Sprache kann den „Schlüssel“ auf der Grundlage der „Schlüssel-Wert-Paar“-Initialisierung ignorieren, dh Sie können eine Liste mit mehreren Werten verwenden Werte zum Initialisieren des Strukturfelds.

1) Schreibformat der Initialisierungsstruktur für mehrere Wertelisten

Verwenden Sie Kommas, um mehrere Werte zu trennen, um die Struktur zu initialisieren, zum Beispiel:

ins := 结构体类型名{
    字段1的值,
    字段2的值,
    …
}
Nach dem Login kopieren

Bei der Initialisierung mit diesem Format müssen Sie Folgendes beachten:

  • Die Struktur muss alle Felder des Körpers initialisieren.

  • Die Füllreihenfolge jedes Anfangswerts muss mit der Deklarationsreihenfolge der Felder in der Struktur übereinstimmen.

  • Die Initialisierungsformen von Schlüssel-Wert-Paaren und Wertelisten können nicht gemischt werden.

2) Beispiele für Initialisierungsstrukturen mit mehreren Wertelisten

Das folgende Beispiel beschreibt eine Adressstruktur, und die Adressen müssen in einer bestimmten Reihenfolge vorliegen, zum Beispiel:

type Address struct {
    Province    string
    City        string
    ZipCode     int
    PhoneNumber string
}
addr := Address{
    "四川",
    "成都",
    610000,
    "0",
}
fmt.Println(addr)
Nach dem Login kopieren

Führen Sie den Code aus, die Ausgabe lautet wie folgt:

{四川 成都 610000 0}
Nach dem Login kopieren

Empfohlenes Lernen: Golang Tutorial

Das obige ist der detaillierte Inhalt vonSo initialisieren Sie Mitgliedsvariablen einer Struktur in der Go-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage