Heim >Backend-Entwicklung >Golang >Was ist das Äquivalent von Go zu den Void-Zeigern von C?
Um eine Datenstruktur zu erstellen, die jeden Typ in Go enthalten kann, sollten Sie die Verwendung der leeren Schnittstelle in Betracht ziehen.
Gemäß der Go-Programmiersprachenspezifikation „implementieren alle Typen die leere Schnittstelle.“ Das bedeutet, dass Sie eine Variable vom Typ Schnittstelle{} definieren und ihr einen Wert eines beliebigen Nicht-Schnittstellentyps zuweisen können.
var value interface{} = 10
Mit dieser Funktionalität können Sie Datenstrukturen erstellen, die Werte jeden Typs speichern können. ähnlich wie leere Zeiger in C. Sie könnten beispielsweise eine verknüpfte Liste definieren, in der jeder Knoten einen Wert eines beliebigen Typs enthalten kann:
type Node struct { Value interface{} Next *Node }
Ab Go 1.18 wurde der integrierte Alias „any“ als Synonym für interface{} eingeführt. Es bietet einen prägnanteren und aussagekräftigeren Namen für die leere Schnittstelle.
var value any = 10
Durch die Verwendung der leeren Schnittstelle oder ihres Alias „any“ können Sie Go-Datenstrukturen erstellen, die Werte von speichern können Jeder Typ, der eine ähnliche Funktionalität wie Void-Zeiger in C erreicht.
Das obige ist der detaillierte Inhalt vonWas ist das Äquivalent von Go zu den Void-Zeigern von C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!