扩展DLL实例
ExtDll项目
1.新建项目ExtDll:MFC DLL-->选择:MFC 扩展DLL(E)-->完成。
2.添加导出类:右击项目,添加类-->MFC类-->类名:CCompute,基类:CObject。
Compute.h文件
//Compute.h
#pragma once
// CCompute 命令目标
class AFX_EXT_CLASS CCompute : public CObject
{
public:
CCompute();
virtual ~CCompute();
public:
int m_data1,m_data2;
CCompute(int d1,int d2);
int Add();
int Sub();
int Mul();
double Div();
};
AFX_EXT_CLASS int Mod(int d1,int d2);
/*导出函数的方法
2.关键字或宏
除了使用DEF文件来导出函数外,还可以在源程序中使用__declspec(dllexport)关键字或其替代宏AFX_EXT_CLASS:
#define AFX_EXT_CLASS AFX_CLASS_EXPORT (定义在头文件afxv_dll.h中)
#define AFX_CLASS_EXPORT __declspec(dllexport) (定义在头文件afxver_.h中)
来导出函数和整个C++类。
具体的格式为:
导出整个类:
class AFX_EXT_CLASS 类名[ : public基类]
{
……
}
导出类的成员函数:
class 类名[ : public基类]
{