在我们日常的开发中,难免要使用别人封装的第三方库;那么接下来就跟着我一步步学习如何在VS编译器中调用第三方库吧。
我自己封装了一个简单的dll文件;函数如下所示:
头文件(.h) #ifndef _MYDLL_H
首先创建一个空白项目后,将上述的文件夹拷贝到该项目下,如下所示:
内部结构如下图所示:
dll文件夹用来存放dll文件,include文件夹用来存放头文件,lib文件夹用来存放lib文件;接下来右键点击项目->属性->常规,弹出如下界面:
点击编辑,将第三方库中的头文件路径包含进去,如下所示:
选中附加库目录,将lib文件的路径包含进去,
之后就是考虑如何把lib文件加载进来了,这个简单,点击链接器->输入之后,将库文件输入进去即可,如下图所示:
最后需要把dll文件拷贝到运行工作目录中,即exe运行文件所在目录,你可以手动拷贝,也可以在生成事件->后期生成事件中添加拷贝命令,如下所示:
那么调用动态链接库的整个流程就已经全部搭建完成了, 需要提一下的是,我这边的文件都是根据相对路径去获取的,这样的话,当库文件路径发生改变时,不易出错,如果你想用绝对路径,那当然也是可以的。有兴趣的可以尝试一下。那么接下来就是如何在代码中调用库文件中的函数了,这个时候,头文件就显得举足轻重了,首先把头文件包含进来,之后,便可以直接调用库函数了。代码如下所示:
#include <iostream> #include "mydll.h" using namespace std; int main() { int nNum1 = 10; int nNum2 = 20; int nSum = add(nNum1, nNum2); cout << "调用库函数的nSum = " << nSum << endl; system("pause"); return 0; }