我在一个fixed64文件中有一个类型为.proto的字段。
我想把它读成一个int64字段:
score := int64(pb_obj.Score)当我试图编译代码行时,我会得到错误消息cannot convert pb_obj.Score (type *uint64) to type int64。我也尝试过转换一个uint64,并得到了几乎相同的消息。
发布于 2016-02-01 22:38:50
pb_obj.Score的类型似乎是*uint64 (指向uint64的指针),而不是uint64。您只需要访问指针所引用的值:
score := int64(*pb_obj.Score)(请参阅*前缀作为区别)
发布于 2016-02-01 22:37:37
基于编译错误,您使用的是uint64指针,而不是uint64值。通过直接使用*运算符引用值,您可以得到所需的东西。我从来没有和protobuf合作过,所以我可以走了,但那会让你动起来的。这里有一个很好的参考资料,可以帮助金刚指针
https://stackoverflow.com/questions/35141669
复制相似问题