向Protobuf注入外部依赖?

时间:2011-06-13 13:15:43

标签: c++ protocol-buffers

我有一个Protobufs的类层次结构,它被序列化和反序列化。现在在运行时,我希望其中一个类包含我的类的实例,它由我在C ++中实现,并包含我在运行时发现的某种装饰和缓存。
有没有办法用普通的protobuf编译器来实现它?

我使用的两个选项是为类的每个实例使用带整数id的索引。由于性能受到影响,我想避免这种情况 另一种选择是使用外部脚本来破坏生成的源文件。这是相当丑陋的,如果可能的话,我也想避免它。

1 个答案:

答案 0 :(得分:0)

在运行时生成.proto来描述你的装饰消息,调用protoc来获取描述符,然后使用DynamicMessage?

有点乱,但它可能会起作用。请参阅protobuf文档中的Self-Describing Messages