qt导入dll函数(Qt项目如何使用DLL)
前面已经学习了Qt项目如何创建dll, 本文就接着学习如何在项目中使用创建好的dll。
在Qt Creator中可以同时打开两个project,其中一个是active 状态,其工程名称用黑体表示。可以用鼠标右键在两个工程之间来回设置active project,以便build和run相应的工程。同时打开两个工程,给工程的建立,带来便利,提高了效率。结合本文来讲,就是可以把创建dll的工程打开,然后再新建一个调用它的新工程(为方便起见,调用dll的工程称为当前工程,下同)。
在当前工程使用dll, 在这里分成4个小的步骤:step 1: 将dll的头文件拷贝到当前工程的main.cpp文件所在的目录下,然后将拷过来的dll的头文件添加到当前工程中。添加方法是,右键点击当前工程文件名,选择Add Existing Files。将拷贝过来的两个头文件,添加到当前的工程中以后,在main.cpp中添加一行代码:
#include “mydll.h”
示例中创建了一个MyDll.dll, 需要添加这个dll的两个头文件到工程libTester中,完成后如下图:
工程libTester的资源管理情况
step2: 将MyDll.dll文件从库创建的目录,拷贝到当前工程编译的目标文件所在的目录。
dll文件可以build出release和debug两个版本。release版本的dll则拷贝到当前工程build所生成的目录下的release子目录。debug版本的dll则拷贝到当前工程build所生成的另一个目录下的debug子目录。main.cpp编译后生成的main.o文件也在这个子目录中,相应的exe文件也会在这产生。
拷贝dll文件到当前编译输出文件的目录下
step 3: 在当前工程的pro文件中,配置dll文件的路径:
LIBS = PATH
这里的PATH就是拷贝dll所放的那个目录(亦即main.o所在子目录)
在工程文件中配置dll的路径,以便进IDE找到dll
step 4: 在main中调用MyLib.dll:
#include <QCoreApplication>
#include "mydll.h" //这是要使用的动态链接库的头文件
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
MyDll clib; //调用动态链接库MyLib, 创建了一个对象。
clib.test(); //test()在动态连接库中使用qDebug()输出提示信息,以测试程序运行结果。
return a.exec();
}
【小结】本文学习了如何在Qt工程中使用我们已经创建好的动态链接库(dll)。dll是一个容器,把编译好的类装在里面,在其他工程中可以直接使用它。
在Qt编程中,我们可以把一些可以重复使用的代码,创建成dll,在后续的编程中,作为自己的库调用。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com