动态库和静态库
静态链接库:需要提供生成库的*.h文件和*.lib文件
在生成库的*.h文件中,声明格式为:
extern“C” 函数返回类型 函数名(参数表)
在*.cpp源文件中,
#include“..\lib.h”
#pragmacomment( lib, “..\\debug\\libTest.lib”) // 手动添加
// 指定与静态库一起链接的(或者在IDE的lib栏中填入lib文件的路径(自动添加))
动态链接库:需要提供*.dll和*.lib,或者只提供*.dll
1.导出函数,可提供应用程序使用
2.DLL内部函数,只能在DLL中使用
DLL的导入导出:(可以参看下面的例子)
#ifdefWLL_EXPORT
#defineWLL_API_declspec(dllexport)
#else
#defineWLL_API_declspec(dllimport)
#endif
(注意,动态库和静态库的*.lib文件不一样。动态库的只含有一些文件的基本信息,文件名之类,不包含函数的实现。)
DLL文件的加载方式:(使用dll文件)