让我说我有一个
Type T [64]byte
我想使用“ crypto / rand”包用随机字节填充类型T的对象。
T obj
rand.Read(obj)
显然这是行不通的,所以我该怎么办。我认为顶部的类型声明与C ++中的typedef等效。
答案 0 :(得分:1)
如JimB所述,您正在尝试将[64]byte
传递给采用[]byte
的函数,并且这些类型并不等效。您可以在整个数组上传递一个切片,它可以正常工作:
rand.Read(obj[:])
工作示例:https://play.golang.org/p/eARFfn4bDzQ
Tour of Go对此进行了介绍。