关注
你的理解基本上是正确的。在 Go 中,slice 是一个引用类型,它包含了一个指向底层数组的指针、长度和容量。当你将一个 slice 作为参数传递给函数时,实际上是将 slice 的副本传递给函数,但是这个副本仍然指向相同的底层数组。
如果函数内部修改了 slice 的长度(例如使用 append 函数),那么会创建一个新的底层数组,并将原有的元素复制到新的数组中。这时,函数内部的 slice 和外部的 slice 将指向不同的底层数组。
如果函数内部只是修改了 slice 中的某个元素的值,而不改变长度,那么修改会影响到外部的 slice,因为它们共享同一个底层数组。
总结起来,当你传递一个 slice 给函数时,函数内部对 slice 的修改会影响到外部的 slice,除非函数内部改变了 slice 的长度。
查看原帖
1 2
相关推荐
投递字节跳动等公司10个岗位
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
303610次浏览 2693人参与
# 如果不工作真的会快乐吗 #
59495次浏览 519人参与
# 百度开奖 #
164072次浏览 982人参与
# 地方国企笔面经互助 #
3900次浏览 11人参与
# 美团求职进展汇总 #
1328416次浏览 12453人参与
# 选完offer后,你后悔学本专业吗 #
20202次浏览 144人参与
# 阿里云管培生offer #
17915次浏览 297人参与
# 正在实习的你,几点下班 #
52151次浏览 391人参与
# 国央企薪资爆料 #
8708次浏览 69人参与
# 如何一边实习一边秋招 #
992702次浏览 12640人参与
# 提前批简历挂麻了怎么办 #
146606次浏览 1948人参与
# 学历or实习经历,哪个更重要 #
51331次浏览 402人参与
# 海康威视求职进展汇总 #
399137次浏览 3406人参与
# 米哈游求职进展汇总 #
176193次浏览 1458人参与
# 求职遇到的搞笑事件 #
70917次浏览 577人参与
# 投递实习岗位前的准备 #
1179904次浏览 18398人参与
# 面试体验感最好的是哪家? #
85185次浏览 846人参与
# 实习生应该准时下班吗 #
167511次浏览 1159人参与
# 得物求职进展汇总 #
66416次浏览 682人参与
# 网申一定要掌握的小技巧 #
5358次浏览 53人参与
# 招聘要求与实际实习内容不符怎么办 #
10322次浏览 273人参与
# 0offer是寒冬太冷还是我太菜 #
899150次浏览 8015人参与