我有两个结构 A & B 和一个带有 A & B 的嵌套结构 C,定义如下:
结构 A:
type Source_a struct{
Sname string
price float64
Qty int
}
结构 B:
type Source_b struct{
Sname2 string
price2 float64
Qty2 int
}
嵌套结构 C :
type Data struct{
S_a []Source_a
S_b []Source_b
}
我已经声明了 Source_a 和 Source_b 类型 var 并从 DB 派生并分配了值。结构 A 的示例代码:
//Post DB query
sks := make([]Source_a, 0)
for rows.Next(){
sk := Source_a{}
err := rows.Scan(&sk.Sname, &sk.Uprice, &sk.Qty)
sks = append(sks, sk)
我在将 Struct A & B 的值绑定(bind)到 Struct C 时遇到了麻烦。我正在尝试一些东西,但它抛出了错误,很确定这不是正确的方法:
td := Data{
S_a: []Source_a{
Source_a{
Sname:sks.Sname,
Uprice:sks.Uprice,
Qty:sks.Qty,
},
},
S_b: []Source_b{
Source_b{
Sname2: sks2.Sname2,
Uprice2: sks2.Uprice2,
Qty2: sks2.Qty2,
},
},
},
你能帮忙吗,我是Golang的新手。如果您需要澄清或细节,请告诉我。
最佳答案
sks
和 sks2
看起来像 slice ,您将它们用作变量。你可以做
td := Data{
S_a: sks,
S_b: sks2,
}
关于go - Go中嵌套结构的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61312821/