Jak wyrazić wartość „zerową” w Go?
type Node struct {
next *Node
data interface{}
}
I chcę powiedzieć
return &Node{ data: NULL, next: NULL }
Odpowiedzi:
Jak już odkryłeś, odpowiednik NULLjest nil. Zwróć jednak uwagę, że generalnie nie musisz inicjować rzeczy do nillub zera w Go, ponieważ domyślnie wszystkie zmienne (w tym dynamicznie przydzielane) są ustawiane na „wartości zerowe” w zależności od typu (cyfry zero, odwołania nil). Więc w twoim przykładzie powiedzenie new(Node)spowodowałoby, że węzeł miałby oba pola nil.
niljest NULL w golang. .
Myślę Zrozumienie Nil jest doskonała i kompleksowa intro nilw Go. Możesz również obejrzeć prezentację wideo tutaj .