V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wohenfuyou
V2EX  ›  C++

关于 protobuf proto 类型映射到 c++类型

  •  
  •   wohenfuyou · 2021-01-20 14:07:47 +08:00 · 1239 次点击
    这是一个创建于 1190 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我得测试代码,proto bytes 类型代码生成 c++类型是 string*,官方文档写的是 string

    proto 文件:

    message RTKEY
    {
    optional int64 id1 = 1;
    optional int64 id2 = 2;
    };

    message ControlArea
    {
    optional RTKEY id = 1;
    optional bytes name = 2;
    optional RTKEY parent = 3;
    optional int32 level = 4;
    optional bool remove_fg = 5;
    }

    自动生成的代码文件:

    ::mytest::RTKEY* id_;
    ::std::string* name_;
    ::mytest::RTKEY* parent_;
    ::google::protobuf::int32 level_;
    bool remove_fg_;

    为什么生成的代码里是 string类型呢?因为这个 string 代码出现了问题。。

    1 条回复    2021-01-22 07:57:19 +08:00
    terryching
        1
    terryching  
       2021-01-22 07:57:19 +08:00 via Android
    string *是内部使用的,你用接口获取和设置都是 string
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3337 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 11:39 · PVG 19:39 · LAX 04:39 · JFK 07:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.