2011-01-24 6 views
5

可能性の重複:
Binary serialization/de-serialization in C++ and C#C#アプリケーションとC++アプリケーション間のmapおよびshared_ptrのシリアル化?

私は、サーバーがC++で書かれているプロジェクトに取り組んでいます(ブーストが広く使用されている)と、クライアント・アプリケーションは、C#で書かれています。私は、クライアント/サーバー間のメッセージのシリアライズ/デシリアライズ中に問題に直面しています。

私は、この種のクロスプラットフォームシリアル化を実現するためのさまざまな代替ライブラリを研究しています。プロトコルバッファは最高のようですが、標準ライブラリのmapコンテナとboost::shared_ptrのシリアル化をサポートしていません。

私の質問、その後、次のとおりです。

  • 誰かがmapboost::shared_ptrはプロトコルバッファを使用して直列化する方法を説明することができます。それとも失敗したのですか?
  • ApacheのThriftはこれに対応しますか?
  • ...または(C#)クライアント側でinterop DLLを使用してスタックしていますか?
+0

@jgauffin:このユーザーはプロトコルバッファを明示的に排除しているので、(少なくともその質問の)重複はありません。 – Shog9

+0

どのような実装が 'boost :: shared_ptr'をどのように直列化するのかわかりません。 – jgauffin

答えて

2

C++メッセージクラスをC++/cli refクラスでラップすると、クライアント側で同じブーストシリアル化ライブラリを使用できます。

関連する問題