当前位置: 首页 > news >正文

在自己的电脑建设空间网站谷歌google下载

在自己的电脑建设空间网站,谷歌google下载,wordpress在线时间获取,无法打开wordpress网页目录1 从 CObject 派生类1.1 使用基本 CObject 功能1.2 添加运行时类信息1.3 添加动态创建支持1.4 添加序列化支持2 访问运行时类信息3 动态对象创建1 从 CObject 派生类 在 CObject 的讨论中,经常使用术语“接口文件”和“实现文件”。 接口文件(通常称…

目录

  • 1 从 CObject 派生类
    • 1.1 使用基本 CObject 功能
    • 1.2 添加运行时类信息
    • 1.3 添加动态创建支持
    • 1.4 添加序列化支持
  • 2 访问运行时类信息
  • 3 动态对象创建

1 从 CObject 派生类

  • 在 CObject 的讨论中,经常使用术语“接口文件”和“实现文件”。 接口文件(通常称为头文件,或 .H 文件)包含类声明和使用该类所需的任何其他信息。 实现文件(或 .CPP 文件)包含类定义以及实现类成员函数的代码
  • 从 CObject 派生类时,可以从四个级别的功能中进行选择:
    1)基本功能:不支持运行时类信息或序列化,但包括诊断内存管理
    2)基本功能加上对运行时类信息的支持
    3)基本功能加上对运行时类信息和动态创建的支持
    4)基本功能加上对运行时类信息、动态创建和序列化的支持
  • 为重用而设计的类(以后将用作基类的类)至少应包括运行时类支持和序列化支持(如果预期将来有任何序列化需求)
  • 通过在从 CObject 派生的类的声明和实现中使用特定的声明和实现宏来选择功能级别

1.1 使用基本 CObject 功能

	//.h文件的声明class CSimple : public CObject{// add CSimple-specific members and functions...};

1.2 添加运行时类信息

  • 头文件.h文件的声明
    //.h文件的声明
    class CPerson : public CObject
    {DECLARE_DYNAMIC(CPerson)// other declarations
    };
    
  • 在类的实现文件 (.CPP) 中使用IMPLEMENT_DYNAMIC 宏
    //此宏采用类的名称及其基类作为参数
    IMPLEMENT_DYNAMIC(CPerson, CObject)
    
  • 始终将 IMPLEMENT_DYNAMIC 放在类的实现文件 (.CPP) 中。 IMPLEMENT_DYNAMIC 宏应在编译期间只计算一次,因此不应在接口文件 (.H),该接口文件可能包含在多个文件中

1.3 添加动态创建支持

  1. CObject 类派生你的类
  2. 在类声明中使用 DECLARE_DYNCREATE 宏
  3. 定义没有参数的构造函数(默认构造函数)
  4. 在类实现文件中添加 IMPLEMENT_DYNCREATE 宏

1.4 添加序列化支持

  1. CObject 类派生你的类
  2. 重写 Serialize 成员函数
    如果直接调用 Serialize,即不希望通过多态指针序列化对象,请省略步骤 3 到 5
  3. 在类声明中使用 DECLARE_SERIAL 宏
  4. 定义没有参数的构造函数(默认构造函数)
  5. 在实现文件中使用 IMPLEMENT_SERIAL 宏
  • “多态指针”指向类的对象(将其称为 A)或从 A 派生任何类的对象(例如 B)。 若要通过多态指针进行序列化,框架必须确定它正在序列化 (B) 的对象运行时类,因为它可能是从某些基类 (A) 派生的任何类的对象

2 访问运行时类信息

  • 如果已从 CObject 派生类并使用了从 CObject 派生类一文中介绍的 DECLARE_DYNAMICIMPLEMENT_DYNAMICDECLARE_DYNCREATEIMPLEMENT_DYNCREATE、或 DECLARE_SERIALIMPLEMENT_SERIAL 宏,则 CObject 类能够在运行时确定对象的具体类
  • 使用 RUNTIME_CLASS 宏
CRuntimeClass *pClass = RUNTIME_CLASS(CObject);
  • 使用 IsKindOf 函数: 可用于确定某个特定对象是否属于某个指定类或者是否派生自某个特定类,且确保类具有运行时类支持
class CPerson : public CObject
{DECLARE_DYNAMIC(CPerson)// other declarations
};

3 动态对象创建

  • 在给定运行时类的情况下动态创建对象
CRuntimeClass* pRuntimeClass = RUNTIME_CLASS(CMyClass);
CObject* pObject = pRuntimeClass->CreateObject();
ASSERT(pObject->IsKindOf(RUNTIME_CLASS(CMyClass)));
  • 在需要序列化或动态可创建性等功能时,可以从 CObject 派生一个类。 许多数据类需要序列化到文件中,因此,通常最好从 CObject 派生
  • 从 CObject 类派生的开销是最小的。 派生的类仅继承四个虚函数和一个 CRuntimeClass 对象
http://www.ds6.com.cn/news/48391.html

相关文章:

  • 公司做网站的费用怎么账务处理天津seo推广软件
  • 郴州网站建设较好的公司网站推广营销运营方式
  • 国外网站设计欣赏seo优化软件购买
  • 响应式网站与自适应seo大牛
  • 上海门户网站建设口碑推广
  • 汽车之家网址seo外链发布技巧
  • 房地产做网站不百度seo培训班
  • 做淘宝要网站小程序制作
  • 临淄网站制作首选专家网络热词2021流行语
  • 品牌购买网站北京优化推广公司
  • 网站跳出率高怎么办搜索引擎的优化方法有哪些
  • 网络规划设计的步骤包括哪些橘子seo历史查询
  • 成都php网站开发百度seo优化技巧
  • githuub怎么做网站百度引擎搜索入口
  • 余姚物流做网站深圳网站开发制作
  • 外包加工网怎么样怎么优化自己网站
  • apmserv搭建多个网站泉州网站建设优化
  • iis 7.0 搭建网站2019网站seo
  • 如何申请免费网站空间怎样做网络推广营销
  • python整合网站开发技术哪些广告平台留号码
  • 网站每年空间域名费用及维护费百度一下首页百度
  • 企业网站开发方案百度知道app
  • 免费做简历的网站seo是搜索引擎优化吗
  • 湖南省新冠肺炎疫情防控指挥部seo研究中心超逸seo
  • 呼和浩特网站建设设计优化百度搜索
  • 临朐整站优化大片ppt免费下载安装
  • html所有代码大全厦门seo测试
  • 知名网站设计欣赏河南网站推广那家好
  • 个人站长适合做什么网站电商培训机构哪家好
  • 公司网站建设有哪些百度爱采购竞价推广