Heim > Backend-Entwicklung > Golang > Wie geht Go mit ungültigen Zeigern über „interface{}' um?

Wie geht Go mit ungültigen Zeigern über „interface{}' um?

Linda Hamilton
Freigeben: 2024-12-22 15:57:22
Original
368 Leute haben es durchsucht

How Does Go Handle Void Pointers Using `interface{}`?

Schnittstelle als Void-Pointer in Go

In Datenstrukturbibliotheken ist es oft wünschenswert, mit verschiedenen Datentypen zu arbeiten. In C kann dies mithilfe von Void-Zeigern erfolgen. In Go sind Void-Zeiger jedoch nicht verfügbar.

Die Go-Lösung: Schnittstelle{}

Das Go-Äquivalent eines Void-Zeigers ist die leere Schnittstelle, Schnittstelle {}. Gemäß der Sprachspezifikation „implementieren alle Typen die leere Schnittstelle“. Dies bedeutet, dass jeder Typ in einer Variablen vom Typ interface{} gespeichert werden kann.

Verwendungsbeispiel

Um interface{} zu verwenden, deklarieren Sie einfach eine Variable dieses Typs :

var v interface{}
Nach dem Login kopieren

Sie können der Variablen dann einen beliebigen Datentyp zuweisen:

v = 10
Nach dem Login kopieren

Die Daten können dann abgerufen werden Verwendung von Typzusicherungen:

if number, ok := v.(int); ok {
    // v can be safely treated as an int
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie geht Go mit ungültigen Zeigern über „interface{}' um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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