【发布时间】:2012-09-16 08:59:09
【问题描述】:
我想知道哪些是保存和加载 C++ 数据的最佳方式。 我最感兴趣的是保存我在模拟中使用的类和矩阵(不是稀疏的)。 现在我只是将它们保存为 txt 文件,但是如果我将成员添加到类中,我必须修改加载数据的函数(它必须解析并检查 txt 文件中的值), 我认为不理想。
您一般会推荐什么? (附注:因为我想发布我的代码,我真的很想只使用标准 c++ 或可以重新分发的库)。
【问题讨论】:
-
那么你想要实现的是一些序列化机制,它可以让你添加新成员而不需要重写你的保存函数?
-
我主要是Matlab程序员,所以我通常使用内置的“保存”功能,不太在意细节。我也想在 C++ 中有一个通用的保存功能。我知道 matlab 使用 HDS 库,但我知道的不多。
-
不幸的是,现在您必须关心细节,因为它们很可能会影响您的整个设计。你能告诉我们更多(通过上面的编辑)你的模拟是否需要实时性能,中间保存,只有最终保存,不一定是世界上最快的,是否要保存 10 个对象,1000 个对象,1,000,000对象等?
-
@JonathanSeng 对于最紧急的程序,我必须保存 3d 矩阵集(2-d 维度 + 时间)。大约它们的尺寸为 100x100x60。每个模拟运行 250 次(但我希望至少达到 1000 次)。当我在一夜之间运行它们时,写作速度并不重要。在稍后阶段,我加载每个模拟,评估每个模拟的某些指标并计算这些指标的某些统计数据。