<< 和 & 在 boost 序列化库中有什么区别?

What is the difference between << and & in boost serialisation library?

本文关键字:lt 什么 区别 序列化 boost      更新时间:2023-10-16

如果两者都为我做了同样的事情,那么就可以串行化数据而不会出现任何问题。我应该使用哪一个?在哪种情况下?

输出存档类似于输出数据流。可以使用<<&操作员将数据保存到档案中:

ar << data;
ar & data;

输入档案类似于输入数据流。可以使用>>&运算符从存档中加载数据。

ar >> data;
ar & data;

当为基元数据类型调用这些运算符时,只需将数据保存/加载到归档中/从归档中加载数据即可。当为类数据类型调用时,会调用类序列化函数。每个序列化函数都使用上面的运算符来保存/加载其数据成员。这个过程将以递归方式继续,直到类中包含的所有数据都被保存/加载为止。

http://www.boost.org/doc/libs/1_54_0/libs/serialization/doc/tutorial.html