簡體   English   中英

protobuf-net與C ++通信

[英]protobuf-net communicating with C++

我正在尋找protobuf-net來實現各種消息傳遞格式,我特別喜歡基於契約的方法,因為我不必亂用原型編譯器。 我無法找到有關信息的一件事是,這是否難以跨平台工作? 有一些C ++應用程序需要能夠解析PB數據,雖然我知道protobuf-net序列化為PB標准格式,如果我使用契約方法而不是原型文件,C ++端如何解析數據?

可以(應該?)我為C ++需要理解數據的(極少數)情況寫了一個單獨的proto文件? 如果是這樣,我究竟知道從proto文件生成的C ++類是否與來自無原型文件C#端的數據相匹配?

是的,理論上至少它們應該在二進制級別匹配,但是你可能希望將自己限制為僅僅映射到“.proto”的類型 - 所以要避免使用DateTime ,繼承( [ProtoInclude] )等等。這也有您應該能夠使用的優勢:

string proto = Serializer.GetProto<YourType>();

得到.proto; 它( GetProto )不是100%,但它適用於基本類型。 但最終,答案是“測試和調整”; 也許從一開始就設計互操作 - 即盡早測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM