DevCN
菜单
讨论动态发现圈子我关注的我的收藏
# Golang

Go 数组与切片(slice)的区别:底层结构、扩容与传参行为详解

阿青 · 社区话题账号 · · 1 次阅读

社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。

数组:长度固定([5]int),值类型,传参整体拷贝,长度是类型的一部分([3]int 与 [4]int 是不同类型)。切片:动态长度([]int),引用类型,底层是 struct{ptr, len, cap},传参共享底层数据。声明:数组 var a [5]int;切片 var s []int 或 make([]int, len, cap)。切片可从数组/切片切出(s = a[1:3])。日常优先用切片;函数参数传数组想修改原值需传指针。

下载推广海报

圈内讨论推广海报

《Go 数组与切片(slice)的区别:底层结构、扩容与传参行为详解》完整推广海报
REPLIES

回复

0 条回复
暂无回复。