protobuffer C#客户端与与C++服务端交互 数据格式定义

juehzao001 2016-03-03 10:20:56
现在项目要用到C#客户端与C++服务端通信 ,之前服务端也用的C# 所以消息格式如下
[ProtoContract]
public class MSGReqRegist : MSGBase
{
[ProtoMember(1)]
public string userName;
[ProtoMember(2)]
public string password;
[ProtoMember(3)]
public bool guest;//是否游客身份
}
客户端和服务端序列号和反序列类似这样都能解析出来
MemoryStream m = new MemoryStream();
Serializer.Serialize<object>(m, new MSGReqRegist ());
Serializer.Deserialize<MSGRegister>(Stream)
本人不懂C++,但是现在服务端用的C++,如何去定义消息格式 能让客户端和服务端都解析出来呢,请问有知道的同学吗?
...全文
348 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
关于“protobuffer C#客户端”这个概念,我觉得你应该自己去考察一下真实性。因为假设真的搞明白protobuff 协议是怎样一个内容机制,那么c++也就没有问题了。
  • 打赏
  • 举报
回复
真正能了解这类跨平台架构的人,你会发现,他直接能够看 json 或者 xml 内容。而那些标题党式的程序员,则动不动纠结于 .net 内部的二进制序列化,或者c++的二进制struct之类的,纠结于私有协议。 跨平台就是要使用最近20年来出现的比较流行的、通用的数据交换协议,而不是纠结于某个编程语言。按照这个思路去设计。
衣舞晨风 2016-03-03
  • 打赏
  • 举报
回复
衣舞晨风 2016-03-03
  • 打赏
  • 举报
回复

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧