国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網 會員登陸 & 注冊

go語言中[]*int和*[]int的具體使用

2023-07-07 23:30 作者:哈市飛劍  | 我要投稿

[]*int是一個指向指針的切片,本質上是切片,只不過切片里面存放的元素是指針;
*[]int是一個指向切片的指針,本質上是指針,可以用*來獲取切片;

簡易記法:從右往左讀,最后一個符號是[],說明是切片,倒數第二個符號是*說明切片里是指針;從右往左讀,最后一個符號是*,說明是指針,倒數第二個符號是[]說明指針指向一個切片類型。

對于[]*int,可以使用for _, ptr := range slice獲得切片里面的指針,并通過*ptr得到切片里的元素(本質上是指針/地址)對應的值。
對于*[]int,可以使用*slice獲得整個切片。

[]*int

func main() {
?? ?var a = 1
?? ?var b = 2
?? ?var slice []*int
?? ?slice = append(slice, &a)
?? ?slice = append(slice, &b)
?? ?for _, ptr := range slice {
?? ??? ?fmt.Print(*ptr, " ")
?? ?}
}

輸出:1 2?

*[]int

func main() {
?? ?var a = 1
?? ?var b = 2
?? ?var slice *[]int
?? ?arr := []int{a, b}
?? ?slice = &arr
?? ?fmt.Println(*slice)
}

輸出:[1 2]


go語言中[]*int和*[]int的具體使用的評論 (共 條)

分享到微博請遵守國家法律
昆山市| 肥城市| 诸城市| 镇远县| 靖州| 武汉市| 青海省| 永顺县| 九龙城区| 科技| 罗城| 峨边| 卓资县| 龙里县| 改则县| 武强县| 武宣县| 宜兰县| 宁城县| 武穴市| 资兴市| 阿勒泰市| 泰兴市| 大新县| 遂溪县| 永年县| 邻水| 连州市| 探索| 青州市| 兖州市| 平顶山市| 福贡县| 奇台县| 长泰县| 天门市| 广安市| 襄城县| 永丰县| 花莲县| 肥乡县|