“型”是一种语言的关键字,但我需要使用它作为一个属性名称,我的结构,如:如何在Go中使用“type”作为结构属性?
type Message struct{
type string
}
我的IDE中发现了错误线2
“型”是一种语言的关键字,但我需要使用它作为一个属性名称,我的结构,如:如何在Go中使用“type”作为结构属性?
type Message struct{
type string
}
我的IDE中发现了错误线2
为什么你需要使用type
?
当你需要使用这个属性来解析JSON编码的数据,你可以写:
type Message struct {
Kind string `json:"type"`
}
为什么不呢?实际上,它是一个json序列化对象,所以我可以像你说的那样做。 –
我期待着一个神奇的解决方案:( –
对不起,唯一的魔法就是没有任何魔法:) –
type
是保留字,不能用作标识符。 Docs
你为什么需要使用它?如果你正在解组JSON/Yaml,也许你可以看看标签。为其他语言命名你的字段,并简单地在它旁边添加一些结构标签,如''json:“type”'' – Depado
我正在从另一种语言重写应用程序到GO。序列化对象需要具有相同的字段名称。我将使用'json'结构标签。没有其他的解决方案 –