gpt4 book ai didi

c++ - 我可以将 proto2 生成的代码 stub 与 libprotobuf3.x 一起使用吗?

转载 作者:行者123 更新时间:2023-12-02 10:10:23 26 4
gpt4 key购买 nike

我有一个使用 proto2 和 libprotobuf2.x 的遗留应用程序。还有另一个应用程序应用程序,我希望该应用程序与 proto3 通信。
我检查了可能的解决方案和此 thread 中的讨论
说 libprotobuf3.x 提供与 proto2 的兼容性。
这是否意味着我可以使用为 proto2 生成的相同 proto(带有 proto2)和相同的代码 stub pb.h/pb.cpp,而只需将我的旧应用程序与 libprotobuf3.x 链接起来,它会像一个魅力一样工作吗?
我不想将遗留原型(prototype)更新为 proto3,因为它可能需要对遗留代码进行重大重构。

最佳答案

不,您不能链接 .pb.*使用 protoc 生成的文件2.0 反对 libprotobuf 3.0。
就像任何共享库一样,主版本号的增加意味着 API 的重大更改。
proto2 的兼容性表示支持 Proto 2 语法 (syntax = "proto2")。还有proto3proto2 二进制兼容电线上。

I don't want to update legacy protos to proto3 as it might require major refactoring in the legacy code.


如果您重新生成 .pb,则很有可能。带有 protoc 的文件3 并重新编译,它无需重构就可以工作(默认语法仍然是 proto2)。

关于c++ - 我可以将 proto2 生成的代码 stub 与 libprotobuf3.x 一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63833243/

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