编程学习资讯网

Qt动态链接库的创建和使用--编程学习网

发布时间:2018-08-16 09:01:07   来源:本站编辑   浏览次数:

一、生成dll文件

1、创建一个C++库项目。

新建->Library->C++库,然后点击"choose";

位置->类型,选择共享库;

模块的勾选看情况。

最后,工程中有3个文件。mylib.cpp、mylib.h、mylib_global.h。

2、添加内容,即库文件要实现的功能。

例:1、创建一个ui文件

2、修该mylib.cpp、mylib.h文件

复制代码
 1 #include "mylib_global.h"  2 #include <QDialog>  3 namespace Ui  4 {  5 class Mylib;  6 }  7 class MYLIBSHARED_EXPORT Mylib :public QDialog  8 {  9 public: 10 Mylib(QWidget *parent = 0); 11 private: 12 Ui::Mylib *ui; 13 };
复制代码
复制代码
1 #include "mylib.h" 2 #include "ui_mylib.h" 3 Mylib::Mylib(QWidget *parent): 4  QDialog(parent), 5 ui(new Ui::Mylib) 6 { 7 ui->setupUi(this); 8 }
复制代码

3、构建工程,在生成的debug目录中可以看到生成的3个,即.a、.o和.dll文件。

 

二、调用dll文件

1、修改准备调用dll'文件的工程的配置文件.pro

#让本项目可以找到mylib.h和mylib_global.h这两个文件

INCLUDEPATH += ../mylib

#这一行则需要告诉编译器(注意,这里是编译器!)到哪里去找到这个 dll 文件

#LIBS += ../build-mylib-Desktop_Qt_5_9_3_MinGW_32bit-Debug/debug/mylib.dll

2、将之前的dll文件放到本工程的源码目录下并加上头文件#include "mylib.h",即可调用连接库。

3、构建工程,将之前的dll文件放到生成的exe的同级目录下,然后程序即可运行。

 

附:1、在构建第一个工程的时候,可以在弹出的一个对话框中修改dll等文件的生成目录;我们可以新建目录bin_debug,将2个工程的生成文件都放到其中。

2、似乎可以#include "../bin_debug/mylib.h"

编程学习网 http://www.javalearns.cn

关注微信号:javalearns   随时随地学Java

或扫一扫

随时随地学Java