我有一组类,我希望从中序列化数据。虽然有很多数据,(我们正在谈论一个 std::map 具有多达一百万或更多的类实例)。
我不想过早优化我的代码,我想我会尝试一个简单干净的 XML 实现,所以我使用 tinyXML 将数据保存到 XML,但速度太慢了。所以我开始研究使用 Boost.Serialization 编写和读取标准的 ascii 或二进制。
它似乎更适合这项任务,因为我不必在开始之前分配所有这些内存作为开销。
我的问题本质上是如何为文件格式规划最佳序列化策略。如果没有必要,我并不是特别想序列化整个 map ,因为它实际上只是我所追求的内容。稍微玩了一下序列化(并查看了输出),我不明白加载回数据如何知道它何时到达 map 的末尾,例如,如果我只是一个接一个地保存所有项目.在规划序列化策略时需要考虑哪些问题?
谢谢。
最佳答案
阅读此 FAQ !这对入门有帮助吗?
关于使用 Boost 对复杂数据进行 C++ 序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/554646/