手写MFC---第三节DECLARE_MESSAGE_MAP()

转载 2011年01月24日 21:59:00

首先看定义

#define DECLARE_MESSAGE_MAP() /

private: /

         static const AFX_MSGMAP_ENTRY _messageEntries[]; /

protected: /

         static AFX_DATA const AFX_MSGMAP messageMap; /

         virtual const AFX_MSGMAP* GetMessageMap() const; /

 

AFX_MSGMAP_ENTRY是一个结构

struct AFX_MSGMAP_ENTRY

{

         UINT nMessage;   // windows message

        UINT nCode;      // control code or WM_NOTIFY code

         UINT nID;        // control ID (or 0 for windows messages)

         UINT nLastID;    // used for entries specifying a range of control id's

         UINT nSig;       // signature type (action) or pointer to message #

         AFX_PMSG pfn;    // routine to call (or special value)

};

AFX_DATA的定义

#define AFX_CORE_DATA

#define AFX_DATA AFX_CORE_DATA

 

AFX_MSGMAP也是一个结构体

struct AFX_MSGMAP

{

#ifdef _AFXDLL

         const AFX_MSGMAP* (PASCAL* pfnGetBaseMap)();

#else

         const AFX_MSGMAP* pBaseMap;

#endif

         const AFX_MSGMAP_ENTRY* lpEntries;

};

 

我们看一下,在第三行中

static const AFX_MSGMAP_ENTRY _messageEntries[];

定义了一个静态 常量  AFX_MSGMAP_ENTRY结构 名字为_messageEntries的数组

为什么?没有大小

从语法上讲,声明一个静态变量是可以的,就象:

#include <iostream.h>

class A

{

public :

    static const int arrData[];

};

const int A::arrData[] = {1,2,3,4,5};

void main()

{

         cout<<A::arrData [3];

}


3 手写实现SpringMVC,第三节:通过反射给属性和参数注入值

在上一篇已经完成了读取beanName->Object映射关系的功能,这一篇就是把读取到的映射注入到属性中。 在WebController里定义了需要被Autowired的两个Service,myQu...

MFC宏定义 ON_WM_PAINT DECLARE_MESSAGE_MAP

转载自:http://www.cppblog.com/citywanderer/articles/8660.htmlhttp://www.cppblog.com/citywanderer/articl...
  • zhoxier
  • zhoxier
  • 2012年09月01日 16:14
  • 2792

MFC与坦克大战第三节

  • 2012年12月18日 18:12
  • 37.74MB
  • 下载

MFC BEGIN_MESSAGE_MAP()

转自:http://www.cppblog.com/momoxiao/archive/2009/10/22/99206.html 1BEGIN_MESSAGE_MAP(CpassApp, C...

数据结构第三节作业

  • 2015年05月22日 20:11
  • 279KB
  • 下载

MFC消息映射BEGIN_MESSAGE_MAP详解

MFC的消息映射对于对开发者处理消息可谓十分方便。MFC类继承众多,虚函数表占内存大导致微软直接不采用虚函数方式。发现《VC++深入详解》只大概说了消息映射的原理,没有详细介绍其实现,所以写篇小文章探...

信息论ppt第二章第三节

  • 2015年05月05日 21:04
  • 563KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章: 手写MFC---第三节DECLARE_MESSAGE_MAP()
举报原因:
原因补充:

(最多只允许输入30个字)