DLL(Dynamic Link Library )即动态链接库。从个人的理解来说:dll的使用提供了一种不公开源代码发布程序的方法,在工程中是必须的一步。因为我们不应该也不需要把源代码交给用户。总之,交给用户使用的C++软件应该就是一堆头文件、一堆lib以及一堆dll和若干exe。
基于以上原因,我要将我写代码生成为dll文件,也就是得到dll、lib、h三个文件
根据网上的资料,我自行试验了一下,最后总结方法如下,我要做的的是将类封装成dll:
1、我的IDE(编译环境)是VS2010中的VC++,我新建了一个解决方案,专门用于生成dll和测试,我将之命名为”DLLTEST“
2、新建工程test,选择win32控制台项目,选择空项目和dll,确定
3、由于我封装的是一个类,所以我把类的头文件和源文件(h和cpp文件)加入到项目之中。
4、在类的名称之前加入__declspec(dllexport)将其声明为dll输出,当然项目的属性配置之类的要弄好,不然会出现错误,比如该加到包含目录,库目录以及附加依赖项的东西统统都要加进去。
5、生成。生成成功之后就会在debug目录下产生好几个同名的文件,其中dll、lib文件就是我们要得到的。
6、接下来,建立一个win32控制台项目,勾选空项目和控制台应用程序。向项目中添加一个名为main的cpp文件
7、将生成的dll、lib以及之前的h文件加入到项目之中,在main.cpp文件中写入如下内容
#include <xxx.h>
void main()
{
}
8、xxx是你生成dll的那个h文件名,接下来就可以在main函数中测试你的类了,你可以调用你声明为public的成员函数和变量,测试方法根据你写的东西测试就行了。