面试真题

Go · 简单 · 大华股份

golang中哪些类型是引用类型,哪些类型是值类型

简单 Go 🎤 大华股份
参考答案
结论:Go中值类型赋值传参拷贝整体,引用类型拷贝引用头指向同一底层。值类型:int、float、bool、string、array、struct;引用类型:slice、map、chan、func、interface、pointer。原理:值类型如array拷贝后独立;引用类型如slice header含ptr/len/cap,拷贝后共享底层数组,修改相互影响;string不可变但属值类型;指针传递地址副本也视为引用语义。示例:a:=[]int{1}; b:=a; b[0]=2则a[0]也变;而c:[1]int{1}; d:=c; d[0]=2不影响c。
题目整理自公开面经,答案由校招宝自研生成,仅供参考