gpt4 book ai didi

go - Go 中的字节是否可以使用 nil 值?

转载 作者:IT王子 更新时间:2023-10-29 01:49:09 26 4
gpt4 key购买 nike

我正在用 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' 或其他非字母字符。但这似乎很老套。我该怎么办?

最佳答案

byte 是一个 numeric type ,实际上是 uint8 的别名。

这意味着它有默认值 zero value共 0 个。

关于go - Go 中的字节是否可以使用 nil 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53993586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com