gpt4 book ai didi

没有的c++ nanopb Protobuff

转载 作者:行者123 更新时间:2023-11-28 04:31:40 27 4
gpt4 key购买 nike

我有一个 protoBuff3 规范,看起来像

message MSG {
string name = 1;
repeated string data = 2;
}

还有一个设置“MSG.data max_count:20”的选项文件

我正在尝试不使用 .

我目前正在使用 pb_ostream_from_bufferpb_encode 但是我在尝试链接时收到错误提示 pb_ostream_..., pb_encode, pb_decode,... external symbols do不存在。我能够找到在 pb_encode.h 和 pb_decode.h 中定义的这些函数

.在网上我看到了对函数的引用,比如ParseFromStringSerializeToString,但是我在任何地方都找不到这些函数。

在没有 iostream 的情况下序列化和序列化我的消息的正确方法是什么?

最佳答案

protobuf库有很多,相互独立。通常你会选择一个并使用它:

这些都可以用于序列化和解析来自内存缓冲区的消息。此外,Google 的库支持 C++ iostream,而 nanopb 支持用 C 实现的类似流系统。

有关“外部符号不存在”的错误表明您没有链接 nanopb 库代码(pb_encode.cpb_decode.c pb_common.c).和往常一样,.h 文件只包含函数声明,而您需要链接.c 文件以提供函数定义

关于没有<iostream>的c++ nanopb Protobuff,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52729061/

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