2010-11-18 20 views
39

Comment exprimer une valeur "nulle" dans Go?Valeur nulle dans Go

type Node struct { 
    next *Node 
    data interface{} 
} 

Et je veux dire

return &Node{ data: NULL, next: NULL } 

Répondre

78

L'équivalent de NULL est nil, comme vous avez déjà découvert. Notez cependant que vous n'avez généralement pas besoin d'initialiser les objets à nil ou zéro dans Go, car par défaut, toutes les variables (y compris celles allouées dynamiquement) sont définies sur "valeurs zéro" selon le type (numéros zéro, références nil). Donc, dans votre exemple, dire new(Node) se traduirait par un nœud avec les deux champs nil.

1

Je pense que Understanding Nil est une intro excellente et complète de nil en Go. Vous pouvez également regarder la vidéo de présentation here.