下面的代码(共享:链接)应该在一个订单中插入两个位置(订单和位置都是struct s:
package main
import "fmt"
type orderPosition struct{
art string
qty string
}
type order struct{
posList []orderPosition
}
func main() {
o := new(order)
o.loadPos()
fmt.Printf("# pos: %d\n",len(o.posList))
}
func (o order) loadPos() {
o.posList = append(o.posList, orderPosition {art: "art 1", qty: "2 pc"})
o.posList = append(o.posList, orderPosition {art: "art 2", qty: "7 pc"})
fmt.Printf("# pos: %d\n",len(o.posList))
}
输出是:
# pos: 2
# pos: 0
loadPos方法按顺序填充仓位。但是一旦离开该方法,位置列表就会丢失。
为什么数组会丢失其内容?
任何帮助将不胜感激。
慕仙森
相关分类