gpt4 book ai didi

go - 如何修改 golang 中的结构体 slice 元素?

转载 作者:IT王子 更新时间:2023-10-29 00:53:34 25 4
gpt4 key购买 nike

您有一个 golang 结构片段,您想要更改其中的一个条目。

type Type struct {
value int
}

func main() {

s := []Type{{0}, {0}}

// Prints [{0} {0}]
fmt.Println(s)

firstEntry := s[0]
firstEntry.value = 5

// Also prints [{0} {0}]
fmt.Println(s)
}

https://play.golang.org/p/32tpcc3-OD

使用括号运算符并修改其返回值不会更改 slice 本身。

进行此 slice 条目修改的推荐方法是什么?

最佳答案

尝试

s[0].value = 5

这会到达 slice 的后备存储。还有

p := &s[1]
p.value = 6

关于go - 如何修改 golang 中的结构体 slice 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41127380/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com