问题内容 我有一个 Go 结构体定义如下: type record struct { events.apigatewayproxyrequest `JSON:
我有一个 Go 结构体定义如下:
type record struct {
events.apigatewayproxyrequest `JSON:",omitempty"`
events.apigatewaywebsocketproxyrequest `json:",omitempty"` //nolint:all
events.sqsevent `json:",omitempty"`
}
我想知道如何启动这个结构。我尝试过:
Record{events.APIGatewayProxyRequest: {}}
但它给了我一个错误:结构文字中的invalid field name events.apigatewayproxyrequest。似乎包含包名称的名称不能用作结构中的键名称。启动它的正确方法是什么?
将类型嵌入到结构中时,封闭结构的字段名称与嵌入类型的类型名称(不带包选择器)相同。所以:
event:=Record{
APIGatewayProxyRequest: events.APIGatewayProxyRequest{ ... },
}
初始化的右侧是该类型的文字,因此您使用完整的类型名称(带有选择器)。
以上就是如何使用名称具有包名称的嵌套结构来启动 go 结构的详细内容,更多请关注编程网其它相关文章!
--结束END--
本文标题: 如何使用名称具有包名称的嵌套结构来启动 go 结构
本文链接: https://lsjlt.com/news/561375.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
2024-05-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0