Как выразить в Go "нулевое" значение?
type Node struct {
next *Node
data interface{}
}
И я хочу сказать
return &Node{ data: NULL, next: NULL }
Ответы:
Эквивалент NULLis nil, как вы уже обнаружили. Тем не менее, обратите внимание, что вам обычно не нужно инициализировать объекты до nilнуля или нуля в Go, потому что по умолчанию все переменные (включая динамически назначаемые) установлены на «нулевые значения» в соответствии с типом (числа ноль, ссылки nil). Итак, в вашем примере высказывание new(Node)приведет к Node с обоими полями nil.
nilявляется NULL в голанге. .
Я думаю, что Understanding Nil - отличное и исчерпывающее вступление к nilin Go. Вы также можете посмотреть презентационное видео здесь .