it's not my need, hope other methods

在 2019年8月24日星期六 UTC+8上午11:43:32,burak serdar写道:
>
> On Fri, Aug 23, 2019 at 9:25 PM Lee Rick <blade...@gmail.com <javascript:>> 
> wrote: 
> > 
> > i want to do 
> > type A struct{ Name string} 
> > type B struct{Age int} 
> > type C struct{Address string} 
> > 
> > a, b, c := A{}, B{},C{} 
> > have a function 
> > d1 := merge(a,b)  //d1 like struct{Name string, Age int} 
> > d2 := merge(a,c)  //d2 like struct{Name string, Address string} 
> > d3 := merge(b,c) //d3 like struct{Age int, Address string} 
>
> You cannot have a function that merges two structs and returns a new 
> one, but you can have structs that are compositions of other structs. 
>
> type AB struct { 
>   A 
>   B 
> } 
>
> Struct AB is a struct containing both A and B. You can access the 
> members of A and B as though they're members of AB. 
>
> ab:=AB{} 
> ab.Name="a" 
> ab.Age=1 
>
> This is also valid: 
>
> ab.A.Name="a" 
> ab.B.Age=1 
>
> Initialization has to be explicit though: 
>
> ab:=AB{A:A{Name:"name"}, B:B{Age:1}} 
>
>
>
>
> > 
> > 
> > how to realize merge function? anyone can give me a demo 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "golang-nuts" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to golan...@googlegroups.com <javascript:>. 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/golang-nuts/9d0f4159-146b-4d5b-91c0-8846445a84d4%40googlegroups.com.
>  
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/f7e61c2d-1aef-4160-b525-7d9c2488f9e1%40googlegroups.com.

Reply via email to