• MFC序列化


    1. 序列化
    序列化 -- 存档,把内存中的对象存储到文件
    反序列化 -- 读档,把对象从文件读取内存

    1.1 c++ -- 对象的个数信息和对象的类型信息都要存储到文件中

    1.2 MFC 序列化
    class myclass
    1) 继承CObject
    :public CObject
    2) 重写Serialize虚函数
    void Serialize(CArchive& archive)
    3) 在类的声明中使用宏DECLARE_SERIAL
    DECLARE_SERIAL(myclass)
    4) 提供一个默认构造
    myclass(){};
    5) 在类的实现文件中使用宏IMPLEMENT_SERIAL
    IMPLEMENT_SERIAL(myclass,CObject,1)
    1代表的版本号

    MFC 的序列化原理:
    1.改造后的类,每个类都有一个CreateObject函数,用来new 对象
    2.改造后的类,每个类都有一个CRuntimeClass的静态成员变量, 保存有CreateObject的函数指针
    3.当反序列化的时,CArchive会拿到对应类型的CRuntimeClass,通过之前保存的函数指针来new 对象

    学如逆水行舟,不进则退。 博客园技术交流群 群 号:1073255314 (本群没人,刚刚建立 -_-!!! )
  • 相关阅读:
    BootstrapTable表格数据左右移动功能遇到的问题(数据左右移动,列表拖拽排序,模糊查询列表数据定位)
    MVC校验
    线程
    验证码
    PublicLogic
    进程
    请求处理过程
    上传组件
    委托
    Global全局应用程序类
  • 原文地址:https://www.cnblogs.com/Mj-NaijAm/p/13602843.html
Copyright © 2020-2023  润新知