gpt4 book ai didi

c++ - 来自 Protocol Buffer 消息的普通结构

转载 作者:行者123 更新时间:2023-12-03 07:22:55 25 4
gpt4 key购买 nike

有没有办法从 C++ 中的 Protocol Buffer 消息中获取一个简单的结构?
IE。

struct PlainFoo {
int32_t bar;
float baz;
};
message Foo {
required int32 bar = 1;
required float baz = 2;
}
我通过网络在 Protocol Buffer 中获取了一些数据,我希望能够将其添加到其他类似数据中,并将其存储在紧凑的表示中以供内部使用,而无需基本上复制代码中的消息声明。
我知道我可以使用生成的消息类本身,但它有一堆内部成员,我不想四处走动。
有问题的消息只有必填字段。

最佳答案

我不知道会生成普通结构的 C++ protobuf 库,但也有可以在 C++ 代码中使用的 C 库。至少 nanopbpbtools生成简单的结构:
/*纳米pb */
typedef 结构 _Foo {
int32_t 条形图;
float baz;
} 富;

/* pbtools */
结构 Foo_t {
int32_t 条形图;
float baz;
};

使用 nanopb,您还可以选择使用 PB_BIND() 连接来自 .proto 的标签号定义文件到您自己的代码中定义的结构。如果您想将代码与接口(interface)规范分离,这将很有用,并允许例如添加未序列化的额外字段。

关于c++ - 来自 Protocol Buffer 消息的普通结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64558881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com