一、利用Qt编写一个简单的动态库
利用Qt编写一个简单的动态库、里面含有加、减、乘、除四个函数接口。
1、打开Qt、新建一个项目、选择Library、C++库、然后点击确认。
2、选择共享库、写入项目名称、我这里命名为《QtMathDLL》、选择项目的路径、然后点击下一步。
3、然后一直点击下一步、最后点击完成、项目就创建好了、含有以下几个文件。接下来就是编写代码。
4、在头文件加入四个接口函数的声明,代码如下:
5、在 源文件中、编写四个接口函数的代码。如下所示:
6、最后点击左下角的构建按钮就可以了、注意是构建、不是运行。编译模式的话根据自己的选择需要Debug还是Release模式、但是一定得和你需要用到项目的运行模式一样、你的项目是Debug模式,这边就必须选项Debug模式、你的项目是Release模式,这边就必须选项Release模式、否者会出现错误(Must construct a QApplication before a QWidget)。
7、 最后、在项目的目录下就可以看到dll文件了(我的是Debug、所以在Debug目录里面找)。接下里就是如何调用这个动态库了。
二、利用Qt调用动态库
Qt调用动态库有隐式调用和显式调用两种方式。
(一)、隐式调用
隐式调用是指在编译时不需要显式地链接库,而是在运行时动态加载库并调用其中的函数。
1、创建一个新的项目、这个过程我就不多说了。相信大家都已经信手沾来了。
2、将上面生成的动态库文件放在项目的exe文件同目录下、头文件和lib文件(放在lib文件夹里面)放在项目的代码目录下。
3、在项目的Pro文件中添加头文件和lib文件的路径。
4、在项目中调用库文件。在头文件中先声明、在源文件中引用,代码如下:
头文件:
源文件:
运行结果:
(二)、显式调用