示例代码(编辑的代码片段):http ://play.golang.org/p/eZV4WL-4N_
为什么会这样
for x, _ := range body.Personality {
body.Personality[x].Mutate()
}
成功地改变了结构的内容,但是
for _, pf := range body.Personality{
pf.Mutate()
}
才不是?是否该范围会为其迭代的每个项目创建新实例?因为该结构实际上确实发生了变异,但它不会持续存在。