go - 在结构中组合多种类型

标签 go

不确定我的问题的措辞是否尽可能好,但我正在编写一个应用程序,可以有效地将 REST API 转换为二进制(CAN 总线)协议(protocol),并且想知道如何最好地实现两者之间的转换。目前,我正在考虑使用一个由“消息”对象组成的协议(protocol)状态结构,每个对象都携带 JSON 值和相应的 CAN 总线标识符和数据,但不确定它是否尽可能干净。我觉得 map 在这里可能有意义,但不太确定在这种情况下如何理解它们。想法?

最佳答案

您是否正在考虑结构中的多种可能类型,您可能已经使用了联合,但由于 Go 没有联合,您正在寻找替代方案? 如果是这样的话,这个答案中有关于使用接口(interface)实现不同类型的内容:https://stackoverflow.com/a/21567136/459

关于go - 在结构中组合多种类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52243116/

相关文章:

golang 公共(public)方法到私有(private)结构 - 这有任何用例吗

go - 如何在 Go 中有效地处理大型数据数组(超过 10MiB)?

syntax - golang 中的对象工厂

go - 仅更新 golang 中的非空结构字段

javascript - 使用 python 和 javascript 的正则表达式速度慢,但在 go 和 php 中快速失败

go - 如何使用 Go Google SDK 模拟用户?

go - go语句之间的 sleep 语句

go - 解码为接口(interface)类型

go - 从 Golang 执行 web2exe 给我 'exit status 2'

algorithm - 如何改进我的函数,如果是 2 位数字则将 float 舍入到最接近的 10,如果是 3 位数字则舍入到最接近的 100,等等