我有一個 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 結構的詳細內容。更多資訊請關注PHP中文網其他相關文章!