当append切片时,如果需要,可以放大切片.因为规范没有指定算法,我很好奇.
我试图append在Go源代码中找到实现,但找不到它.
任何人都可以解释指定的放大切片算法吗?容量总是翻倍?或者任何人都可以提供源代码的位置append?我可以自己检查一下.
Jam*_*dge 11
所以在当前的实现中,规则是:
据推测,这不是规范的一部分,因此如果需要,将来可以改变启发式方法.
小智 8
在 Go 1.18 中它发生了变化。
提交消息备忘录:
starting cap growth factor
256 2.0
512 1.63
1024 1.44
2048 1.35
4096 1.30
Run Code Online (Sandbox Code Playgroud)