首頁 > 後端開發 > Golang > Go 中將 int 切片轉換為自訂 int 切片指標類型的函數

Go 中將 int 切片轉換為自訂 int 切片指標類型的函數

王林
發布: 2024-02-08 21:33:09
轉載
536 人瀏覽過

Go 中将 int 切片转换为自定义 int 切片指针类型的函数

php小編新一今天為大家介紹的是在Go語言中將int切片轉換為自訂int切片指標類型的函數。在Go語言中,切片(slice)是一個非常常用的資料類型,可以動態地增加或減少元素個數。有時候我們需要將一個切片轉換為自訂的切片指標類型,以便在函數中進行操作。本文將詳細介紹如何實現此轉換,並給出範例程式碼以供參考。透過本文的學習,相信大家對Go語言的切片使用會有更深入的了解。

問題內容

我想將int 切片作為建構函數的輸入,並傳回指向原始清單的指針,將類型轉換為我的外部自訂類型(type intlist [ ]int)。

我可以做到這一點:

type intlist []int

func newintlistptr(ints []int) *intlist {
    x := intlist(ints)
    return &x
}
登入後複製

但我不能這樣做:

type IntList []int

func NewIntListPtr(ints []int) *IntList {
    return &ints
}

// or this for that matter:

func NewIntListPtr(ints []int) *IntList {
    return &(IntList(ints))
}

// or this

func NewIntListPtr(ints []int) *IntList {
    return &IntList(*ints)
}

// or this

func NewIntListPtr(ints *[]int) *IntList {
    return &(IntList(*ints))
}
登入後複製

是否有一句話可以達成這個目標?

解決方法

你這樣做:

func NewIntListPtr(ints []int) *IntList {
    return (*IntList)(&ints)
}
登入後複製

以上是Go 中將 int 切片轉換為自訂 int 切片指標類型的函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板