MFC:_AFXDLL
Posted aibox222
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC:_AFXDLL相关的知识,希望对你有一定的参考价值。
- _AFXDLL是一个在VC++的MFC程序中的系统约定宏定义。
这个定义本身没有什么意义,只是约定标记了,MFC程序,是使用的静态链接库还是动态链接库。如果定义了这个宏(通常是在工程项目属性中),说明使用的是MFC动态链接,否则为MFC静态链接。
在这两种情况下,代码中DECLARE_MESSAGE_MAP的消息映射定义都是存在的,只是有一个细微的差别。这个差别就是,静态链接因为MFC的基础代码在程序内部,因此不需要创建动态链接接口,而动态调用MFC库,则需要有接口,因此需要一个_GetBaseMessageMap产生动态库地址偏移,完成MFC基础类函数映射的入口地址指向
以上是关于MFC:_AFXDLL的主要内容,如果未能解决你的问题,请参考以下文章
1 IntelliSense: #error 指令: Please use the /MD switch for _AFXDLL builds
添加 _AFXDLL 宏和 clr 支持后找不到 InterlockedAdd64
如果 MFC RUNTIME_CLASS 参数具有命名空间,则编译器错误
IntelliSense: #error 指令: Please use the /MD switch for _AFXDLL builds