无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

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的具體使用的評論 (共 條)

分享到微博請遵守國家法律
垫江县| 潜山县| 绥江县| 祁连县| 昌图县| 临沭县| 鹤壁市| 锦州市| 屏南县| 无锡市| 鄯善县| 沽源县| 桂平市| 余姚市| 阿图什市| 舞阳县| 金乡县| 方山县| 汤原县| 涿州市| 益阳市| 灵丘县| 迁安市| 长阳| 右玉县| 丰台区| 玉树县| 旬阳县| 吴江市| 额济纳旗| 松桃| 福清市| 万盛区| 湟中县| 丹棱县| 旬邑县| 阜城县| 嘉荫县| 闽清县| 花莲县| 静海县|