三九宝宝网宝宝百科宝宝知识

MFC常用宏的分类及其作用与用法

11月11日 编辑 39baobao.com

[板蓝根也有副作用]前言:感冒多发的季节里,家长给孩子用的最多的预防感冒的药物要素板蓝根。当孩子出现轻微的感冒就会感冒家长就会给孩子沏两包,孩子的症状就会有所减轻。家长们但是家长了解下面...+阅读

1.MFC宏概述以及常用宏及作用

MFC宏是MFC类库的一个重要组成部分。在MFC应用程序中经常出现。根据用途,大致辞可分为消息映射宏,运行时类型识别宏,调试宏和异常处理宏等。

MFC中常用宏及其作用如下:

名称 功能

RUNTIME_CLASS 获得运行时类的CRuntimeClass结构指针 RUNTIME_CLASS( class_name )

DECLARE_DYNAMIC 提供基本的运行时类型识别(声明) DECLARE_DYNAMIC( class_name )

IMPLEMENT_DYNAMIC 提供基本的运行时类型识别(实现) IMPLEMENT_DYNAMIC (class_name, base_class_name )

DECLARE_DYNCREATE 动态创建(声明) DECLARE_DYNCREATE( class_name )

IMPLEMENT_DYNCREATE 动态创建(实现) IMPLEMENT_DYNCREATE( class_name,base_class_name )

DECLARE_SERIAL 对象序列化(声明) DECLARE_SERIAL( class_name )

IMPLEMENT_SERIAL 对象序列化(实现)IMPLEMENT_SERIAL(class_name,base_class_name,wSchema)

DECLARE_MESSAGE_MAP 声明消息映射表 DECLARE_MESSAGE_MAP()

BEGIN_MESSAGE_MAP 开始建立消息映射表 BEGIN_MESSAGE_MAP( theClass, baseClass )

END_MESSAGE_MAP 结构建立消息映射表 END_MESSAGE_MAP()

ON_MAND 命令消息映射宏

ON_MESSAGE 自定义消息映射宏

ON_WM_... MFC预定义消息映射宏

ON_BN_...,ON_EN_...等 控件通知消息映射宏

2.部分宏说明:

a.RUNTIME_CLASS宏使程序能实时创建类的实例。

为了让这个宏起作用,定义的类必须从CObject类派生而来,并且在派生类的定义中必须使用宏DECLARE_DYNAMIC,DECLARE_DYNCREATE或DECLARE_SERIAL,在派生类的实现文件中必须使用宏IMPLEMENT_DYNAMIC,IMPLEMENT_DYNCREATE或IMPLEMENT_SERIAL。

b.DECLARE_DYNAMIC只能使CObject派生类对象具有基本的类型识别功能,可以通过CObject::IsKindOf(ClassName)测试对象与给定类ClassName的关系。

c.DECLARE_DYNCREATE包括了DECLARE_DYNAMIC的功能。DECLARE_SERIAL包括了DECLARE_DYNAMIC和 DECLARE_DYNCREATE的功能。

3.MFC调试宏

a.跟踪宏:TRACE()

b.断言宏:ASSERT()

当ASSERT宏的参数不为真时,暂停程序的执行。Examda提示:如果表达式的值为真,则不做任何事情。如果参数为假时,则暂停程序的执行并弹出一个对话框,告诉用户程序暂停运行的行以及所在文件信息。用户可以根据情况选择终止程序运行,调试程序或继续运行。

c.断言有效宏 ASSERT_VALID ASSERT_VALID()

该宏用于检查指针和对象的用效性。对于一般指针,只检查指针是否为空。对于MFC对象指针,Examda提示:还调用CObject::AssertValid()成员含数判断对象是否合法。

ASSERT_VALID与ASSERT类似,也是使用对话框提示用户指针或对象是无效的。如果对象有效,则不做任何事情.

以下为关联文档:

舌系带人的相关作用前言:现在的孩子都是家庭中的宝贝,父母们对其是照顾有佳,目前对于幼儿很流行“切除扁桃体”“剪舍系带”等等,家长们这么做的是否是正确的呢?以下就让我们一起来听听专的见解吧!...

给孩子用药注意副作用前言:俗话说,"是药三分毒",虽然药是救命的良方,但同时也可能是有害的毒物。只有熟悉药物的特性、使用及保存方式,才能充分发挥药物的治疗功效。家长如何才可以达到这样的效果呢。...

积分有什么作用该网站的积分有什么作用,可以用来做些什么呢? 什么是积分?积分是育儿网注册用户活跃程度的体现,您在育儿网上的各种行为都会产生积分。如发言、评论、写博客、参加活动等积分有...

笑脸花的作用很大老师,乐乐吐了! 突然传来珂珂着急的高嗓门,现在正是吃午饭的时候,我立马放下手中的碗,跑到乐乐的面前。只见,乐乐一边抹眼泪,一边在哭,我温柔地问道: 乐乐,怎么了?是不是身体不舒服? 他...

走进沙游世界初步感受沙游的作用活动对象:全体心理教师。活动目标:1.了解沙盘游戏,初步感受沙游的作用,学习操作记录的方法。2.尝试开展沙盘游戏,初步学习解读。活动过程: 一、沙盘游戏记录操作的初步接触。1.沙...

表扬的作用(一)、基本情况:姓名:陈思宇,性别:男。 年龄:14岁 户籍所在地:本县张寨镇司楼村学生入学前的简况:小陈是在初一年级下学期从张寨中学转入我们班的。年纪比别的孩子大,但是性格非常内向...

在贯彻《纲要》中发挥教研部门的职能作用促进我市幼教质量的提高 天津市幼儿教育教学研究室 作为市级教研部门肩负着引领我市教师全面落实《纲要》的责任。针对目前幼教工作现状和教师在贯彻《纲要》中的需求和困难...

小标记,大作用区域活动时,小宇说: 老师,我要设计安全标记 ,说着就拿着笔和绘画纸就去午睡室观察了。小宇在午睡室看了一遍后说: 有两个地方需要提醒大家注意安全,一个是睡上铺的孩子不能站在床...

发挥试点园作用全面推进《纲要》实施上海市虹口区教育局 2002年我区实验幼儿园被确定为国家教育部“十五”重点课题“贯彻《幼儿园教育指导纲要(试行)》行动计划”全国15个实验园之一,我们以此为契机,三年来在总课...

推荐阅读
图文推荐