Я реализую дерево в Go.Моя структура TreeNode выглядит следующим образом:
type TreeNode struct {
payload byte
parent *TreeNode
children map[byte]*TreeNode
}
В моей реализации корневой узел дерева - это специальный узел без полезной нагрузки.В противном случае полезная нагрузка всегда представляет собой одну строчную букву из английского алфавита.Итак, моя функция инициализации дерева выглядит следующим образом:
func createEmptyTree(fileName string) *TreeNode{
return &TreeNode{
nil, // Line #180
nil,
false,
map[byte]*TreeNode{},
}
}
Когда я ее компилирую, я получаю следующую ошибку: ./main.go:180:9: cannot use nil as type byte in field value
Так что, похоже, я не могу использовать nil
длябайтовая переменная.Есть ли что-то еще, что я мог бы использовать в этой ситуации?Я мог легко использовать '0'
или другой не алфавитный символ.Но это кажется хакерским.Что мне делать?