新手来吧。我正在尝试将uint64值赋给具有基础类型unit64的命名类型的变量。编译器很不高兴,看不到这两个类型是完全相同的。这样做的正确方法是什么?
package main
import "fmt"
import "math/rand"
type myType uint64
var x myType
func main() {
x = rand.Uint64()
fmt.Println(x)
}
这会抛出编译器错误:
./prog.go:12:4: cannot use rand.Uint64() (type uint64) as type myType in assignment
发布于 2019-05-31 06:43:23
您可以将其转换为myType(rand.Uint64())
。有用的完整链接:Type Assertion in Go和Type Conversion in Go,以及这个堆栈溢出问题的优秀答案"How to cast to a type alias in go"
https://stackoverflow.com/questions/56386449
复制相似问题