2014-09-25 58 views
0

我有两台机器M1和M2。两者都在平行运行。也都有相同的代码。除了M1侧的GUI外。两者都通过TCP(客户端服务器)进行通信。现在我想从M2到M1序列化C++对象,反之亦然。我不想使用任何其他的librery,如增强,谷歌缓冲区等。它可能在c + +序列化? XML可以做什么,我可以使用XML?TCP上的C++的对象序列化

回答

1

是的,绝对。无论你想要什么,你都可以做到。您可以使用XML,X.690,文本,二进制文件或任何您喜欢的格式。只需编写代码将您的对象转换为您选择的序列化格式即可。没有图书馆会很乏味,但如果你想自己做,所有人都不会阻止你。

一个可能的问题 - TCP是一种不保留应用程序消息边界的字节流协议。因此,您需要以某种方式标记对象的末端,可能是通过在每个对象前加上其长度,可能使用某种“对象末尾”标记。

+0

+1 ......“单调乏味”对于编写自己的XML库有些轻描淡写,但正如你所说的“没有人会停止[PARDEEP]”:-) – 2014-09-25 06:57:15