1

有人可以给我一个很好的提示,告诉我如何在不使用标准库以外的额外库的情况下执行序列化?

4

3 回答 3

0

您的选择是:不要序列化,或者,编写您自己的序列化程序代码。它没有内置在语言或标准库中。

此外,您可能想看看一些类似的问题:

将字符串、整数和浮点数序列化为字符数组,以便在没有库的情况下联网

于 2012-09-24T21:48:43.800 回答
0

您可以使用流使用称为二进制序列化的东西,如

http://www.functionx.com/cpp/articles/serialization.htm

于 2012-09-24T21:53:41.407 回答
0

我会质疑您是否有充分的理由不使用库。有很多数据表明,你自己编写的代码最有可能在你的脸上炸毁,原因是它背后的测试最少。

如果您确实有充分的理由并且仍然需要序列化,那么您必须自己编写。基本上,您正在考虑重载通常的 ostream 和 istream 运算符,以便它们支持您需要的类型。

同样,您冒着重新发明方轮的风险。请记住,最好的库(如 boost)本身是使用标准 C++ 编写的,并且对 bost 的许可要求不要求您发布源代码或任何类似的东西。换句话说,即使您使用了 IP,您的 IP 也是安全的。

于 2012-09-24T21:58:07.973 回答