使用vs生成DLL时,没有产生lib,一般发生在我们自己创建的DLL项目中,产生这个问题的主要原因是没有导出类。
导出DLL标记有两种方法,只要采用其中一种就可以解决。
1.添加def文件
在工程上右键 -> 添加 -> 新建项 -> 选"模块定义文件(.def)" -> 随便输入个名字 -> 添加
2.导出类

#define __DLL_H__

#define __DLL_EXPORTS__
#ifdef __DLL_EXPORTS__
#define DLLAPI  __declspec(dllexport)
#else
#define DLLAPI __declspec(dllimport)
#endif

class DLLAPI A{    // 注意,DLLAPI导出标记在class与类名中间
public:
	A(int m);
	int getInt();
private:
	int m_data;
};

#endif

函数的导出方式:

DLLAPI int fun(int m);
// 函数的导出标记位置在返回值最前面

超重点,DLL类的导出标记在class与类名之间,而函数的导出标记在返回类型之前