从现在开始,我们进入DLL专题.今天就从静态库开始.
首先,我们创建一个静态库:(VC里Win32 Static Library工程) ,选择空工程.增加头文件和实现文件(分别是StaticLib.h和StaticLib.cpp),代码如下:
StaticLib.h :
#ifndef _STATIC_LIBRARY_H_
#define _STATIC_LIBRARY_H_
#include "windows.h"
extern "C" void ShowMessage( LPCTSTR pstrMsg, LPCTSTR pstrTitle );
#endif//_STATIC_LIBRARY_H_
StaticLib.cpp:
#include "StaticLib.h"
void ShowMessage( LPCTSTR pstrMsg, LPCTSTR pstrTitle )
{
MessageBox( NULL, pstrMsg, pstrTitle, MB_OK | MB_ICONINFORMATION );
}
这样就好了,我们编译连接就生成了静态库了.
然后,我们怎么用呢!在用之前,我们先说说库吧!
/*--------------------------------------------------------------------------------*/
库的理解
静态链接库与动态链接库都是共享代码的方式,只不过是他们是在二进制级别上重用代码而已。
对于静态链接库:
1、lib中的指令被直接编译连接到最终的EXE文件中了
2、静态链接库中不能再包含其他的动态链接库或者静态库
对于动态连接库:
1、DLL不必被被编译连接到最终EXE文件中,EXE文件执行时"动态"地装载和卸载