后端岗位面试题更新 2026-08-05

当函数A把切片作为参数传给函数B时,这是值传递还是引用传递?如果B对切片执行append操作,函数A中的原始切片能否感知到变化?

字节跳动后端开发互联网/IT编码实现问题拆解技术原理Go

考察说明

考察对Go语言切片底层结构和值传递语义的理解,以及append操作对共享底层数组的影响

回答思路

  1. 明确指出切片传递是值传递,但包含指向底层数组的指针
  2. 解释切片结构(指针、长度、容量)在传递时被复制,但底层数组共享
  3. 分析append操作在容量足够和不足两种情况下的差异,以及对原切片长度和内容的影响
  4. 说明调用者能否感知取决于append是否改变底层数组以及原切片长度是否更新
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。