C++ クライアントと Python サーバー (既に開始済み) との TCP チャットを作成する必要があります。C++ クラスに次のようなメッセージがあります。
class Message{
public:
uint64 utc_time;
uint64 token;
string content;
};
これをクライアントからサーバーに送信しています。サーバーでは、utc_time までに優先キューがあり、他のユーザーにブロードキャストする必要があります。私の質問は、これをシリアル化する方法です。サイズ タイプ size の言語間の依存関係を避けるために、どの形式を使用するのですか? (おそらく将来的にはより多くのメタデータになるので、少し一般的なものが必要です) ? シリアライゼーションに使用するフォーマット(またはバイトのようにのみフラッシュするフォーマット)についてアドバイスをもらえますか?
class Persistent:
public:
Persistent(int sz):objSize(sz){}
void write(std::ostream& out)const{out.write((char*)this, objSize);}
void read(std::istream& in){in.read((char*)this, objSize);}
private:
int objSize;
};
サーバー上のC ++にデシリアライザーを配置し、可能であればpythonから呼び出すという他の可能性を考えました。この問題に対するエレガントな解決策はありますか?