首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Protoc变量一致

Protoc变量一致
EN

Stack Overflow用户
提问于 2018-07-23 22:28:05
回答 1查看 60关注 0票数 0

需要说明的是:我在C++编码方面是一个相当业余的人。

目前,我正在使用Protobuff来序列化c++和java模型之间的数据并进行数据交换。由于两个模型对相同的科学术语使用不同的变量名称(对于日常河流排水,c++模型使用dailyRiverDrianage,java使用dailyRdrainage)。我在protoc中使用了一个新的变量来定义一个共享的变量。

我的问题是,哪种方法是连接两者的最佳方式(protoc变量和模型变量)。无法在Java或C++中更改变量名

EN

回答 1

Stack Overflow用户

发布于 2018-07-30 01:35:19

基本上,你需要一个中间层来保持到原型文件的一致映射。在Java端执行此操作,因为您对该语言更熟悉。该中间层将从Java上的任何东西映射到具有不同名称的Java变量。

编辑:

C++端

代码语言:javascript
复制
message Person {
  required string name = 1;
  required int32 id = 2;
  optional string email = 3;
}

Java端

代码语言:javascript
复制
message Individual {
  required string fullName = 1;
  required int32 personal_id = 2;
  optional string personal_email = 3;
}

将数据从Java端发送到C++端。在Java端生成相同的Person消息单元,并反序列化消息,获取数据并复制(map)。

代码语言:javascript
复制
name -> fullName
id -> personal_id
email -> personal_email

这就是您的解码器/转换器单元,您可以在接口更改时对其进行修补。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51481206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档