作用相似c里的联合体,写配置文件相似
message BBB{
string b=1;
}
message CCC{
int b=1;
}
message AAA {
oneof payload {
BBB b;
CCC c;
}
}
应用的时候导入例如为xxx模块:
创立构造体时候要手动创立oneof里的构造,写法相似:
msg := &xxx.AAA{Payload: &xxx.AAA_BBB{B: &xxx.B{"123"}}}
解析进去判断是BBB还是CCC的时候应用
switch msg.Payload.(type) {
case *(xxx.AAA_BBB):
case *(xxx.AAA_CCC):
}
发表回复