0

嘿,所以我理解 boost 会自动序列化指针,只要你已经为它指向的对象定义了序列化函数,但是

如果我想编写一个需要 a 的 boost 序列化函数,我该怎么办myClass pointer

我不希望 boost 执行保存指向的对象然后恢复指向该对象的指针的默认操作。我希望提升做一些不同的事情。

4

1 回答 1

1

如果您需要与特殊类的正常指针序列化不同的行为,您有两种选择:

也许您可以调整包含 myClass 指针的所有结构/类的 serialize() 方法,以实现您想要的行为。但是,如果您周围有很多这样的指针,这将不是一个选择。另一种可能性可能是使用http://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/index.html中描述的自由函数(为 myClass 指针编写)。

仅当您使用不超过一种存档类型(例如二进制存档)时,另一个选项才有效。您可以从归档类派生并为方法 save(和 load,分别)添加重载。

于 2011-08-07T02:04:23.320 回答