我定义了两种结构类型Type1和Type2
type Type1 struct {
A1,B1,C1 string
}
type Type2 struct {
A1,B1 string
}
将它们嵌入到struct type Supertype
中type Supertype struct {
Type1
Type2
}
然后使用方法Send定义接口Sender,以便同时用于Type1和Type2
type Sender interface {
Send()
}
最后,我定义了func,我想引用Type1和Type2字段
func (p Supertype) Send() {
..
p.A1 = "foo"
..
}
当然会出现'模棱两可的选择器p.A1' 错误。如何使用方法发送两种结构类型Type1和Type2?有类似的问题两种不同的类型如何在golang中使用接口实现相同的方法?但我不认为它适用于我的情况
答案 0 :(得分:7)
您可以使用
p.Type1.A1
如果Type2
也有相同的字段A1