当前位置: 首页 > news >正文

qt5将程序打包并使用

一、封装程序
(1)、点击创建项目->库->c++library
在这里插入图片描述
(2)、填写自己想要封装成库的名称,这里我填写的名称为mydll1
在这里插入图片描述
(3)、如果没有特殊的要求,则一路下一步,最终会出现如下文件列表。

在这里插入图片描述

(4)、删除mydll1_global.h文件,编写mydll1.h文件内容如下:
在这里插入图片描述
其中class Q_DECL_EXPORT Mydll为需要封装的类名,可以在类中编写相关函数,在上述例子中,我们编写了一个add函数。

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函数:
在这里插入图片描述
点击运行,调用成功。

http://www.lryc.cn/news/480237.html

相关文章:

  • 软件设计师-上午题-15 计算机网络(5分)
  • uniapp上拉刷新下拉加载
  • 【C++】【算法基础】快速排序
  • 数仓工具—Hive语法之窗口函数中的order by
  • 以旅游产品为例改写一篇系统架构风格的论文
  • 【Linux】linux编辑器-vim的命令及配置
  • 解决vite项目tailwindcss不生效!!(Vue3、tailwindcss失效)
  • ubuntu 20.04 NVIDIA驱动、cuda、cuDNN安装
  • Python世界:力扣题704二分查找
  • W55RP20-EVB-Pico评估板介绍
  • Flink安装和Flink CDC实现数据同步
  • 数字化转型助手 快鲸SCRM系统为企业营销赋能
  • 浅谈Agent
  • 绿色能源发展关键:优化风电运维体系
  • Sparrow系列拓展篇:对调度层进行抽象并引入IPC机制信号量
  • 天塌了!!!SQL竟也可以做预测分析?| 商品零售额的预测
  • VSCode本地C/C++环境配置
  • 【智能算法应用】淘金优化算法求解二维路径规划问题
  • Linux挖矿病毒(kswapd0进程使cpu爆满)
  • 【java】ArrayList与LinkedList的区别
  • 【LangChain系列6】【Agent模块详解】
  • JavaScript Cookie 与 服务器生成的 Cookie 的区别与应用
  • 深入了解Git、GitHub、GitLab及其应用技巧
  • ctfshow(316,317,318)--XSS漏洞--反射性XSS
  • Visual Studio2022版本的下载与安装
  • nodeJS程序如何引入依赖包
  • 建网站怎么建?只需几个步骤
  • 机器学习课程总结(个人向)
  • 数据分析-43-时间序列预测之深度学习方法GRU
  • Pandas | 数据分析时将特定列转换为数字类型 float64 或 int64的方法