Gab*_*und -5 c++ memory arrays pointers go
在开始学习 go 之前,我与Cand一起工作C++了一段时间,我很好奇为什么*intand[]int在 golang 中被视为不同的类型。是否将其视为数组取决于您,但它们都应该是指向内存中某个位置的指针,指示 int 类型列表的开头。该列表很可能是一号,但我的观点是,为什么在 go 中它们是同一件事[]int,而*int不是同一件事?
C
C++
*int
[]int
gop*_*her 7
An[]int内部具有三个值:指向支持数组的指针、支持数组的长度和支持数组的容量。Go 运行时确保应用程序在支持数组的范围之外进行索引。
An*int只是一个指针,就像 C 中一样。因为 Go 没有指针算术(在unsafe包之外),所以 a*int不能像 C 中那样像数组一样使用。
归档时间:
4 年,2 月 前
查看次数:
110 次
最近记录: