2016-05-16 168 views
3

好像我有兩個struct具有相同的成員,我想一個結構dupliate到另一個,請參見下面的僞代碼:Golang DUP一個結構到另一個

type Common struct { 
    Gender int 
    From string 
    To  string 
} 

type Foo struct { 
    Id string 
    Name string 
    Extra Common 
} 

type Bar struct { 
    Id string 
    Name string 
    Extra Common 
} 

然後,我有結構Foofoo,並bar結構Bar,是否有任何捷徑複製bar從或到foo

+0

你的意圖是不明確的。你想做什麼? – PieOhPah

回答

9

使用conversion。下面的代碼使用一個轉換到副本Foo類型的值Bar類型的值:

foo := Foo{Id: "123", Name: "Joe"} 
bar := Bar(foo) 

playground example

+0

很酷。顯然這隻有在兩個結構體具有完全相同的結構時纔有效。 – Tigraine

+0

正如鏈接文檔所述,底層類型除結構標記外必須相同。 –