如何在Go中创建地图[[16] byte] []字符串?

Go规范指出

必须为键类型的操作数完全定义比较运算符==和!=(比较运算符)。因此,键类型不能为结构,数组或切片。如果键类型是接口类型,则必须为动态键值定义这些比较运算符;失败将导致运行时恐慌。

我希望创建一个哈希表,该哈希表来自Hash接口,返回Hash[]byte,但是我的所有哈希都使用相同的算法完成(因此,我知道它将适合[16]byte)。我怎样才能提供适当的接口,使得所述map型将允许[]byte[16]byte或一些包装其使用作为密钥?

目前,我的使用产生以下错误:

dupes := make(map[[16]byte][]string)
finddups.go:55:无效的地图密钥类型[16] uint8

更新(2012年3月): Go1允许[16]byte作为键类型。


慕沐林林
浏览 262回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go