MFC宏和全局成员
1 数据类型:
BYTE 8位 无符号
WORD 16位 无符号
DWORD 32位 无符号
LONG 32位 有符号
UINT 16位或32位 无符号
BOOL
COLORREF 用于颜色的32位值
BSTR 32位字符指针
LPCSTR 字符串常量32位指针
LPSTR 字符串变量32位指针
LPCTSTR 用于Unicode和DBCS的字符串常量32位指针
LPTSTR 用于Unicode和DBCS的字符串变量32位指针
LPCRECT 指向RECT结构体常量的32位指针
LPVOID 未指定类型的32位指针
2全局变量
以afx为前缀
用于全局应用程序对象:afxCurrentAppName 用于保存全局应用程序对象的名字
afxCurrentWinApp 用于保存全局应用程序对象的指针
afxCurrentInstanceHandle用于保存全局应用程序对象的当前实例句柄
afxCurrentResourceHandle用于保存全局应用程序对象的当前资源句柄
用于诊断信息:
afxDump 发出CDumpContext信息给调试窗口
afxMemDF 控制调试时内存分配器的行为
afxTraceEnabled控制宏TRACE的输出
afxTraceFlags 打开MFC内建的报告特征
afxCheckError 测试错误情况
3 全局函数
用于全局应用程序对象的:
afxGetAppName 用于获取全局应用对象的名字
afxGetApp 用于获取全局应用对象的指针
afxGetInstanceHandle用于获取全局应用对象的当前实例句柄
afxGetResourceHandle用于获取全局应用对象的默认资源句柄
afxGetMainWnd 用于获取全局应用对象的当前主窗口
afxInitRichEdit RichEdit控件的初始化
afxSocketInit Windows Socket的初始化
afxWinInit 控制台应用程序的初始化
afxRegisterWndClass用于对一个用户窗口类进行注册,并补充到MFC自动注册的窗口类中
afxRegisterClass 用于在DLL中注册一个窗口类
afxBeginThread 创建一个新线程
afxEndThread 结束一个线程
afxGetThread 获得指向当前线程对象的指针
用于诊断信息的全局函数
afxCheckMemory 检查当前所有已分配内存的完整性
afxEnableMemoryTracking打开/关闭内存信息
afxIsMemoryBlock 检验内存块是否合理分配
afxIsValidAddress 检验内存地址范围是否在程序的界限内
afxDump 用于转储一个对象的状态
afxDumpStack 用于生成当前堆栈的映像
afxIsValidString
afxSetAllocHook
用于集合类的全局函数
CompareElements
CopyElements
ConstructElements
DestructElements
HashKey
SerializeElements
用于引发异常的全局函数
afxThrowArchiveException
afxThrowFileException
afxThrowMemoryException
afxThrowNotSupportedException
afxThrowResourceException
afxThrowUserException
afxThrowOleException
afxThrowOleDispatchException
afxThrowDAOException
afxThrowDBException
afxAbort
用于字符串格式化和消息框显示的全局函数
afxFormatString
afxFormatString2
afxMessageBox
4 预定义宏
消息映射宏
BEGIN_MESSAGE_MAP
END_MESSAGE_MAP 用于把消息映射括起来
包含有消息映射的内容
ON_COMMANG 处理命令消息的宏
标准Windows消息 ON_WM_xxxx 无参数
命令消息 ON_COMMAND 命令ID,处理函数名
用户界面更新命令消息 ON_UPDATE_COMMANG_UI 命令ID,处理函数名
控件通知消息 ON_CONTROL 控件ID,处理函数名
用户自定义消息 ON_MESSAGE 自定义消息ID,处理函数名
已注册用户自定义消息 ON_REGISTERED_MESSAGE 自定义消息ID,处理函数名
命令ID范围 ON_COMMAND_RANGE 连续范围内命令ID的开始和结束
更新命令ID范围 ON_UPDATE_COMMAND_UI_RANGE 连续范围内命令ID的开始和结束
控件ID的范围 ON_CONTROL_RANGE 控件通知码和连续范围内命令ID的开始和结束
诊断宏
ASSERT 当一个指定的表达式值为FALSE时打印一个消息
ASSERT_KINDOF 用于测试一个对象是否是一个指定类的对象或是否是一个指定类派生的对象
ASSERT_VALID 测试一个对象的内部合法性
TRACE 类似printf的输出功能
TRACE0 不带参数
TRACE1 带一个参数
TRACE2 带GMWW个参数
TRACE3P 带3个参数
异常宏
TRY
CATCH
CATCH_ALL
AND_CATCH
AND_CATCH_ALL
END_CATCH
END_CATCH_ALL
THROW
5 数据库
6 Internet
7 OLE和OLE控件方面