![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
boost
文章平均质量分 56
qq_40178082
这个作者很懒,什么都没留下…
展开
-
序列化共享指针
【代码】序列化共享指针。原创 2023-12-01 14:16:23 · 337 阅读 · 0 评论 -
序列化链表
【代码】序列化链表。原创 2023-10-09 22:10:33 · 54 阅读 · 0 评论 -
boost序列化单例3
https://blog.csdn.net/u012508160/article/details/79127729原创 2023-09-26 18:19:18 · 69 阅读 · 0 评论 -
单例的例子
【代码】单例的例子。原创 2023-09-26 18:01:27 · 109 阅读 · 0 评论 -
序列化单例
序列化库依赖于一些静态变量和表格的存在,用于存储与运行时类型相关的信息。例如,这些表格可以将导出的名称与类型相关联,或者将基类与派生类相关联。原创 2023-09-26 16:46:39 · 99 阅读 · 0 评论 -
1.Boost序列化教程1
Boost C++ 的 序列化 库允许将 C++ 应用程序中的对象转换为一个字节序列, 此序列可以被保存,并可在将来恢复对象的时候再次加载。各种不同的数据格式,包括 XML,只要具有一定规则的数据格式,在序列化后都产生一个字节序列。所有 Boost.Serialization 支持的格式,在某些方面来说都是专有的。比如 XML 格式不同用来和不是用 C++ Boost.Serialization 库开发的应用程序交换数据。所有以 XML 格式存储的数据适合于从之前存储的数据上恢复同一个 C++ 对象。原创 2023-09-14 10:24:19 · 333 阅读 · 0 评论 -
4.2 Serializable Concept
一个类型T是可序列化的,当且仅当以下条件之一为真:上述归档类的模板操作符&、将生成代码以将所有基本类型保存/加载到归档中。这段代码通常会根据归档格式将数据添加到归档中。例如,一个四个字节的整数作为一个二进制归档被附加为4个二进制字节,而对于文本归档,它将被呈现为一个空格后跟一个字符串表示。对于类/结构类型,模板运算符&、将生成调用程序员为特定数据类型编写的序列化代码的代码。没有默认值。尝试对未明确指定序列化的类/结构进行序列化将导致编译时错误。可以通过类成员函数或接受类实例引用作为参数的原创 2023-09-23 22:13:51 · 136 阅读 · 0 评论 -
4.2 Serializable Concept(2)
当通过指向其基类的指针序列化对象时,库需要确定基类是否为抽象类(即是否具有至少一个虚函数)。库使用类型特征宏来执行此操作。并非所有编译器都支持此类型特征和相应的宏。为解决此问题,已实现宏,允许显式指示指定的类型实际上是抽象的。这将确保将对所有编译器返回正确的值。原创 2023-09-24 17:16:28 · 98 阅读 · 0 评论 -
4.2 Serializable Concept(3)
一些序列化特性可能与其他特性发生冲突。有时,这些冲突会导致错误的行为(例如,创建无法读取的归档),而其他时候它们代表了库用户可能存在的概念错误,可能导致意外行为。在尽可能的情况下,这些冲突在编译时被检测到,然后生成错误(BOOST_STATIC_ASSERT)或警告(BOOST_STATIC_WARNING)。它们以一种依赖于编译器的方式生成,应该显示出一条实例化链,直到检测到错误/警告的点。如果没有这个能力,将会很难追踪到库使用中的错误或意外行为。原创 2023-09-24 20:31:48 · 73 阅读 · 0 评论 -
5.1 Serialization Implementation Notes(1)
这种解决方法依赖于已知为非符合标准的编译器的未定义行为。换句话说,不能保证这种方法在所有编译器上都有效。文中提到,截止到写作时,还没有遇到不支持这种解决方法的编译器。原创 2023-09-22 16:09:18 · 92 阅读 · 0 评论 -
5.2 Serialization Implementation Notes(2)
这个库包括大量的文件,这些文件根据其在上面的索引中列出的用途进行组织和分类。类和模板的命名空间与文件所在的目录保持同步。例如,类声明。原创 2023-09-22 16:42:44 · 71 阅读 · 0 评论 -
6.1 Case Studies-Template serialization - shared_ptr<class T>
下面包含的所有代码片段都在 boost::serialization 命名空间内定义。shared_ptr < T > 在中定义。序列化过程沿着上述树结构进行。首次尝试实现 shared_ptr 的序列化只是序列化 shared_ptr 的相关成员。这个库的一个重要特点是可以在不更改类或模板的声明或定义的情况下指定类或模板的序列化方式。这被称为非侵入式序列化。shared count 中的 pi_member 是指向 sp_counted_base_impl 实例的指针。原创 2023-09-13 22:27:14 · 84 阅读 · 0 评论 -
6.2 Case Studies- shared_ptr<class T>Revisited
前面描述的shared_ptr串行化说明了对中等复杂的类结构进行串行化的直接方法。原则上,这比原始实现要简单得多。原创 2023-09-13 16:13:12 · 70 阅读 · 0 评论 -
6.3 Case Studies - PIMPL
在这段文本中,有一个名为的程序,用来演示如何使用PIMPL。文件包含了一个类A的声明,该类通过包含一个指向结构体B的指针来隐藏其实现细节。但是,B的具体定义在另一个单独编译的模块中。原创 2023-09-23 16:26:37 · 75 阅读 · 0 评论 -
6.4 Case Studies - A Simple Logging Archive Class
下面这段内容介绍了一个示例,目的是帮助澄清"归档概念(Archive Concept)"的用法,以便用户可以实现自己的归档类。实现了一个简单但实用的归档类,用于将任何可序列化类型以可读的格式发送到输出文本流中。这个示例的完整代码可以在中找到。要更好地理解它的工作原理,可以查看 “Trivial Archive”。原创 2023-09-23 16:50:06 · 103 阅读 · 0 评论 -
boost序列化vector
【代码】boost序列化vector。原创 2023-09-26 14:10:28 · 190 阅读 · 0 评论 -
Boost初始化static成员变量
【代码】Boost初始化static成员变量。原创 2023-09-20 21:32:21 · 114 阅读 · 0 评论 -
Boost序列化指针
还能序列化指针和引用。由于指针存储对象的地址,序列化对象的地址没有什么意义,而是在序列化指针和引用时,。原创 2023-09-20 17:45:13 · 244 阅读 · 0 评论 -
boost序列化枚举
【代码】boost序列化枚举。原创 2023-09-26 13:38:14 · 117 阅读 · 0 评论 -
Boost序列化int变量
【代码】Boost序列化变量。原创 2023-09-20 16:59:25 · 62 阅读 · 0 评论 -
boost序列化struct
【代码】boost序列化struct。原创 2023-09-14 14:07:49 · 110 阅读 · 0 评论 -
Boost样例
【代码】Boost样例。原创 2023-09-13 11:49:47 · 155 阅读 · 0 评论 -
demo_xml.cpp
defined。原创 2023-09-13 15:01:23 · 241 阅读 · 0 评论