components 是一个参数,类型是[]string ,不知道第四行代码的作用是干啥的。。 求教一下
1 if len(components) == 0 {
2 components = []string{":" + verb}
3 } else {
4 components = append([]string{}, components...)
5 components[len(components)-1] += ":" + verb
6 }
1
Ritter 2022-06-21 17:25:09 +08:00
deep copy 么
|
2
molly2mollyzyz 2022-06-21 17:26:19 +08:00
拷贝对象?
|
3
zwpaper 2022-06-21 17:43:42 +08:00 1
得结合上下文,目测是为了复制出来一份 components ,以免影响到函数调用方的 components
|
5
zwpaper 2022-06-21 17:49:05 +08:00
但是我还有点疑惑,下面是还会给 components 增加内容吗?为啥不用 copy ?
|
6
Verizon OP @zwpaper 下面有很多读取 components 的操作,应该是为了不影响读取吧
https://stackoverflow.com/questions/27055626/concisely-deep-copy-a-slice |
7
zwpaper 2022-06-21 18:38:36 +08:00
copy 也不影响读取,看你发的 so 的 benchmark ,append 性能不输 copy ,append 代码会简洁些,也许是这个考虑
|