2 回答

TA貢獻1806條經驗 獲得超5個贊
標記聲明中拼寫為jsonas的愚蠢錯誤josn
type InnerData struct {
M int64 `josn:"m"` // the spelling is not correct for json.
N int64 `json:"n"`
}
將字段 M 的標記更改為
type InnerData struct {
M int64 `json:"m"` // the spelling is not correct for json.
N int64 `json:"n"`
}
還有一件事是InnerData不是嵌入式結構。在 Golang 規范中,嵌入式結構被描述為:
使用類型聲明但沒有顯式字段名稱的字段稱為嵌入字段。嵌入字段必須指定為類型名稱 T 或指向非接口類型名稱 *T 的指針,并且 T 本身可能不是指針類型。非限定類型名稱充當字段名稱。
// 具有四個類型為 T1、*T2、P.T3 和 *P.T4 的嵌入字段的結構
struct {
T1 // field name is T1
*T2 // field name is T2
P.T3 // field name is T3
*P.T4 // field name is T4
x, y int // field names are x and y
}
- 2 回答
- 0 關注
- 195 瀏覽
添加回答
舉報