去写入(按索引)到切片中超出索引的元素的惯用方法是什么?

What is the idiomatic way in go to write (by index) to an out of index element in a slice?

假设我有一个人口稀少的切片,并希望通过索引 read/write 到一个元素,该元素可能会或可能不会超出切片的容量。

当 x 可能超出容量时,写入 s[x] 的惯用方式是什么?

您需要检查 x 是否在切片的范围之外,如果超出则扩展切片(附加零或类似的东西)。没有神奇的捷径。要 "extend" 个切片,您可以执行以下操作:

a = append(a, make([]T, j)...)

其中 a 是切片,T 是其内容的类型,j 是您想扩展它的程度。