我想比較兩個任意google::protobuf::Message
對象。什麼是最簡單的方法來比較兩個谷歌:: protobuf ::消息對象與對方?
我假定對象相等時
- 它們的描述包含具有等於場數和相應的字段類型的字段。
- 它們的反射具有相同的一組字段(以及相同數量的重複字段)和相等的相應字段值。
我知道,我可以自己編寫這樣的比較函數,但可能已經有一些簡單的或預定義的解決方案了嗎?
此外,可能是我錯過了一些有關這些對象不兼容的主要問題 - 我想知道它是如此。
我想比較兩個任意google::protobuf::Message
對象。什麼是最簡單的方法來比較兩個谷歌:: protobuf ::消息對象與對方?
我假定對象相等時
我知道,我可以自己編寫這樣的比較函數,但可能已經有一些簡單的或預定義的解決方案了嗎?
此外,可能是我錯過了一些有關這些對象不兼容的主要問題 - 我想知道它是如此。
從https://groups.google.com/d/msg/protobuf/5sOExQkB2eQ/ZSBNZI0K54YJ:
在C++中,你可以序列的兩個比較字節。 或者,您可以編寫一些代碼,通過反射對字段 進行迭代並對它們進行比較。
如果您的消息具有地圖類型字段。這可能不起作用。 – nullas
[Google協議緩衝區比較]的可能重複(http://stackoverflow.com/questions/3228107/google-protocol-buffers-compare) – Theolodis