GO切片传值/引用/指针
GO切片传值/引用/指针鄙人一直以为切片,map 在函数调用过程中传递是值传递。这一点没错。和大家想的一样但是此处有一个坑需要规避就是 当所传原切片长度变大后。就是增长后,Go底层会为其分配新的地址来存储更多的值,这时候你传的原切片地址就会变成新的。原理:append()添加数据时并不会影响实参(的长度)。 (可以通过返回值覆盖(修改)实参的值(长度);或者通过切片的指针修改实参)因此当函数中对原切片的长度进行扩增,调用append后,地址发生了变化。在不做返回值覆盖的情况下,需要传入原切片的指
原创
2020-11-24 12:34:33 ·
1133 阅读 ·
1 评论