Visual C++
使用 AFX_EXT_CLASS 导出和导入
使用 AFX_EXT_CLASS 导出和导入
扩展 DLL 使用 AFX_EXT_CLASS 宏导出类;链接到扩展 DLL 的可执行文件使用该宏导入类。用于生成扩展 DLL 的相同头文件可通过 AFX_EXT_CLASS 宏与链接到 DLL 的可执行文件一起使用。
在 DLL 的头文件中,将 AFX_EXT_CLASS 关键字添加到类的声明中,如下所示:
class AFX_EXT_CLASS CMyClass : public CDocument
{
// <body of class>
};
{
// <body of class>
};
当定义了预处理器符号 _AFXDLL 和 _AFXEXT 时,该宏被 MFC 定义为 __declspec(dllexport)。但当定义了 _AFXDLL 而未定义 _AFXEXT 时,该宏被定义为 __declspec(dllimport)。定义后,预处理器符号 _AFXDLL 指示共享 MFC 版本正在由目标可执行文件(DLL 或应用程序)使用。当 _AFXDLL 和 _AFXEXT 都定义了时,这指示目标可执行文件是扩展 DLL。
本文详细介绍了如何使用AFX_EXT_CLASS宏在DLL和可执行文件之间进行类的导出和导入,解释了预处理器符号_AFXDLL和_AFXEXT的作用,并通过实例展示了实际应用。
1万+

被折叠的 条评论
为什么被折叠?



