qt5将程序打包并使用

一、封装程序

(1)、点击创建项目->库->c++library

(2)、填写自己想要封装成库的名称,这里我填写的名称为mydll1

(3)、如果没有特殊的要求,则一路下一步,最终会出现如下文件列表。

(4)、删除mydll1_global.h文件,编写mydll1.h文件内容如下:

其中class Q_DECL_EXPORT Mydll为需要封装的类名,可以在类中编写相关函数,在上述例子中,我们编写了一个add函数。

cpp 复制代码
extern "C"
{
    Q_DECL_EXPORT int add(int a, int b);
}

上述代码含义为,该函数可以被C语言或其他语言调用,同时这个函数是导出(export)的,意味着它可以从动态链接库(DLL)中被外部程序访问。

(5)、编写函数的实现,在对应的.cpp中

编写完成后选择release模式,点击编译(小锤子):

此时会在创建项目的文件夹中的"Mydll1\build\Desktop_Qt_5_15_2_MSVC2019_64bit-Release\release"找到"mydll1.dll"和"mydll.lib"。此时代码封装完成。

二、调用封装好的程序

(1)、创建一个名为test的新项目将之前打包程序中的"mydll1.h"的头文件粘贴到该项目下:
(2)、release模式,点击编译(小锤子)

(3)、此时会在项目的根目录下会出现如下路径:test\build\Desktop_Qt_5_15_2_MSVC2019_64bit-Release\release

将封装好的mydll1.dll、mydll1.lib粘贴到如上位置。并将mydll1.lib的路径添加到test.pro中。

LIBS+=PATH\test\build\Desktop_Qt_5_15_2_MSVC2019_64bit-Release\release\mydll1.lib。

(4)、在test的主函数中引用mydll1.h的头文件。并调用add函数:

点击运行,调用成功。

相关推荐
JasmineX-18 分钟前
数据结构——顺序表(c语言笔记)
c语言·开发语言·数据结构·笔记
java搬砖工-苤-初心不变29 分钟前
OpenResty 配合 Lua 脚本的使用
开发语言·lua·openresty
IT灰猫34 分钟前
C++轻量级配置管理器升级版
开发语言·c++·设计模式·配置管理·ini解析
Swift社区1 小时前
如何解决 Vue2 前端项目为何无法访问本地资源(chunk.js 加载一直 pending/转圈)
开发语言·前端·javascript
大飞pkz1 小时前
【设计模式】题目小练2
开发语言·设计模式·c#·题目小练
啟明起鸣1 小时前
【网络编程】从与 TCP 服务器的对比中探讨出 UDP 协议服务器的并发方案(C 语言)
服务器·c语言·开发语言·网络·tcp/ip·udp
007php0071 小时前
Redis高级面试题解析:深入理解Redis的工作原理与优化策略
java·开发语言·redis·nginx·缓存·面试·职场和发展
九章云极AladdinEdu1 小时前
深度学习优化器进化史:从SGD到AdamW的原理与选择
linux·服务器·开发语言·网络·人工智能·深度学习·gpu算力
axban1 小时前
QT M/V架构开发实战:QStandardItemModel介绍
开发语言·数据库·qt
猿究院-赵晨鹤2 小时前
String、StringBuffer 和 StringBuilder 的区别
java·开发语言