我有一个fixed64.proto 文件类型的字段。我想把它当作一个 int64 字段来读:score := int64(pb_obj.Score)当我尝试编译 agove 行时,我收到错误消息cannot convert pb_obj.Score (type *uint64) to type int64。我也尝试转换 a uint64,并得到几乎相同的消息。
2 回答
有只小跳蛙
TA贡献1824条经验 获得超8个赞
pb_obj.Score
的类型似乎是*uint64
(指向uint64
),而不是uint64
。您只需要访问指针所引用的值:
score := int64(*pb_obj.Score)
(*
区别见前缀)
慕无忌1623718
TA贡献1744条经验 获得超4个赞
根据编译错误,您使用的是 uint64 指针而不是 uint64 值。您可以通过使用 * 运算符直接引用值来获得所需的内容。我从未与 protobuf 合作过,所以我可以离开,但这应该会让你感动。这是一个很好的参考,可能有助于golang 指针
- 2 回答
- 0 关注
- 379 浏览
添加回答
举报
0/150
提交
取消