c++ - boost 序列化省略包装器的版本

标签 c++ boost boost-serialization

我如何告诉 boost 对于特定结构它不应该写入/读取类“版本”标识符?

我正在编写一些包装类,用于以较小的方式序列化某些类型(如可变长度整数)。如果包装器获得了一个类版本,那么整个尺寸减小点都会丢失(在大多数情况下它最终会变大)。

例如,给定 integer a 我将替换此代码:

ar & a;

用这个:

ar & wrapper(a);

我看到了 is_wrapper 特性,但我真的找不到任何文档来说明它的作用,或者它是否有帮助。

最佳答案

添加

BOOST_CLASS_IMPLEMENTATION(wrapper, boost::serialization::object_serializable)

这是documented way .

关于c++ - boost 序列化省略包装器的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8414091/

相关文章:

c++ - 使用 Concurrency::parallel_for() 的边际性能增益

c++ - 是否有带 C++ 编译器但不带 64 位整数的平台?

c++ - boost.enable_shared_from_this 并创建另一个 shared_ptr<T>

c++ - 如何创建支持 `<<` 操作的线程安全日志类?

c++ - 最终子类错误的基类的Boost序列化

c++ - boost 序列化 Armadillo 矩阵

android - Android NDK : Nothing being drawn 中的 OpenGL ES 2.0

c++ - 为什么 clang 会混淆 Boost 和 STL?

c++ - 促进对 protected 数据的序列化访问

c++ - std::string::c_str() 如何返回不会导致内存泄漏或未定义的 c 字符串内容的 c 字符串?