静态库(static library)将函数和数据编译进入到一个二进制文件(.lib)中,当链接的时候,会将函数和数据复制到可执行文件中去。发布的时候,不需要该lib文件。
1、使用vs2013建立一个静态库的工程,StaticDllDemo
新建一个 win32项目,名称定义为 StaticDllDemo,在下一步中选择 “静态库”,然后点击完成即可。
我们查看该项目属性,会发现在 “常规”中的 “配置类型”为“静态库(.lib)”
2.编写代码
新建一个Lib1.h文件,添加如下代码
extern "C" void Msg();
建立Lib1.cpp文件,代码如下
#include "stdafx.h"
#include "Lib1.h"
#include <windows.h>
void Msg()
{
::MessageBox(NULL, L"Static lib", L"Test", NULL);
}
编译即可。
静态库的使用,代码如下
#include "../StaticLibTest/Lib1.h"
#pragma comment(lib,"../Debug/StaticLibTest.lib") //这里是生成lib文件所在的文件夹
int _tmain(int argc, _TCHAR* argv[])
{
Msg();
return 0;
}