0
我正在使用极其模块化的系统。消息可以由src,dest,type的三元组来确定。使用Google协议缓冲区多次反序列化消息
我正在研究用Protocol Buffers重新实现我们的消息。我已经通过Protocol buffer polymorphism,what's the right way to do polymorphism with protocol buffers?和http://www.indelible.org/ink/protobuf-polymorphism/
什么我不知道有没有人实现解决方案读取其中:
message header {
required string src = 1
required string dest = 2
required string type = 3
}
和创建单独的邮件,其中:
message foo {
required header h = 1
required string a = 2
}
独立文件:
message bar {
required header h = 1
required uint32 num = 2
}
在接收代码有类似的东西:
Message.ParseFromString(msgStr)
if (Message.type == foo)
{
FooMessage.ParseFromString(msgStr)
}
else {
BarMessage.ParseFromString(msgStr)
}
如果这种方法已被使用,是否比上述链接中描述的更好或更差?