簡體   English   中英

如何從C ++程序創建Google Proto消息文件?

[英]How can I create a google proto message file from C++ program?

我有一個xml輸入文件,已使用C ++解析並填充了我的數據結構。

我是google協議緩沖區的新手,我無法弄清楚如何從我填寫的數據結構中創建消息(.prot)文件。

謝謝

如果您想從C ++頭文件中的結構/類定義生成google協議緩沖區.proto文件,則需要使用某種形式的C ++反射。

到目前為止,C ++還沒有內置反射,但是,有解決該問題的第三方庫。

使用Boost Fusion BOOST_FUSION_DEFINE_STRUCT,您可以以這樣一種方式定義類,即可以在編譯或運行時遍歷成員。 該解決方案具有侵入性,因為它要求您使用該宏定義結構,但不需要將任何其他工具集成到構建系統中。

另一種選擇是使用獨立代碼生成器。 一個例子是Classdesc

與您使用XML創建的內容相比,協議緩沖區更多地替代了XML。 因此,在這種情況下,您將編寫.proto文件,以定義數據模型,然后將它們與關聯的getter,setter和builder一起編譯為.cpp文件。

暫無
暫無

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

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