En Go, le concept de pointeur vide en C est remplacé par l'interface vide, notée interface{}. Cette interface représente l’ensemble de tous les types (non-interface). Elle permet de stocker tout type de valeur sans avoir à préciser le type spécifique.
Pour utiliser l'interface vide, déclarez simplement une variable de type interface{} :
var value interface{}
Cette variable peut alors contenir n'importe quelle valeur de n'importe quel type :
value = 42 value = "Hello, world!" value = struct{ name string }{name: "John"}
Vous pouvez accéder à la valeur stockée dans une interface vide en utilisant le type assertions :
if x, ok := value.(int); ok { // x is an int } else if y, ok := value.(string); ok { // y is a string }
Mise à jour (2023-09-27) :
À partir de Go 1.18, le type any est introduit comme alias pour l'interface{}. Il offre les mêmes fonctionnalités que l'interface vide, mais il est plus concis et plus facile à lire.
var value any value = 42 value = "Hello, world!" value = struct{ name string }{name: "John"}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!