簡體   English   中英

Golang - 結構之間的轉換

[英]Golang - conversion between structs

我有兩個結構

type A struct {
    a int
    b string
}

type B struct {
    A
    c string
    // more fields
}

我想將類型A的變量轉換為類型B(A僅定義了對某些部分至關重要的基本字段,而B另一方面包含“完整”數據)。

是否可以在Go中,或者我是否必須手動復制字段(或創建方法A.GetB()或類似的東西並使用它將A轉換為B)?

轉換你的意思是:

func main() {
    // create structA of type A
    structA := A{a: 42, b: "foo"}

    // convert to type B
    structB := B{A: structA}
}

類型AB具有不同的基礎類型,因此它們不能相互轉換。 沒門。

因此,要么手動復制,要么提供轉換器功能或執行此復制的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM