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.mzph.cn/news/885306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PICO+Unity MR空间锚点

官方链接:空间锚点 | PICO 开发者平台 注意:该功能只能打包成APK在PICO 4 Ultra上真机运行,无法通过串流或PICO developer center在PC上运行。使用之前要开启视频透视。 在 Inspector 窗口中的 PXR_Manager (Script) 面板上,勾选…

远程终端vim里使用系统剪切板

1、本地通过终端远程linux server,由于不是桌面环境/GUI,终端vim里似乎没办法直接使用系统剪切板,即便已经是clipboard。 $ vim --version | grep clipboard clipboard keymap printer vertsplit eval …

网页中的某个元素高度突然无法设置

做网页时本来一个div的高度好好的&#xff0c;结果代码打着打着突然发现有个div的高度变的很小&#xff0c;把我很多在这个div里的元素给搞的看不见了。 找了好久的原因最后发现是这个div的结束标签</div>不小心被我删了,之后把这个</div>给补上就好了。

go中的类型断言详解

在Go语言中&#xff0c;类型断言&#xff08;Type Assertion&#xff09;是一种将接口类型的变量转换为具体类型的机制。类型断言允许我们从接口类型的变量中提取出具体的值&#xff0c;以便访问具体类型的方法或属性。类型断言的语法如下&#xff1a; value, ok : interfaceV…

17、论文阅读:VMamba:视觉状态空间模型

前言 设计计算效率高的网络架构在计算机视觉领域仍然是一个持续的需求。在本文中&#xff0c;我们将一种状态空间语言模型 Mamba 移植到 VMamba 中&#xff0c;构建出一个具有线性时间复杂度的视觉主干网络。VMamba 的核心是一组视觉状态空间 (VSS) 块&#xff0c;搭配 2D 选择…

ENSP (虚拟路由冗余协议)VRRP配置

VRRP&#xff08;Virtual Router Redundancy Protocol&#xff0c;虚拟路由冗余协议&#xff09;是一种用于提高网络可用性和可靠性的协议。它通过在多个路由器之间共享一个虚拟IP地址&#xff0c;确保即使一台路由器发生故障&#xff0c;网络依然能够正常运行&#xff0c;防止…

XSS漏洞--常用payload及绕过

前置准备 首先准备一个自己的服务器。本地服务器&#xff0c;也就是127.0.0.1不行。在服务器的公开的、可访问的目录下准备一个.php文件。我这里命名为flag.php。flag.php的源代码&#xff1a; //flag.php <?php $cookie $_GET[cookie]; $log fopen("cookie.txt&q…

【Leecode】Leecode刷题之路第44天之通配符匹配

题目出处 44-通配符匹配-题目出处 题目描述 个人解法 思路&#xff1a; todo代码示例&#xff1a;&#xff08;Java&#xff09; todo复杂度分析 todo官方解法 44-通配符匹配-官方解法 前言 本题与10. 正则表达式匹配非常类似&#xff0c;但相比较而言&#xff0c;本题稍…

Redis - 主从复制

在分布式系统中为了解决单点问题&#xff0c;通常会把数据复制多个副本部署到其他服务器&#xff0c;满⾜故障恢 复和负载均衡等需求。Redis也是如此&#xff0c;它为我们提供了复制的功能&#xff0c;实现了相同数据的多个Redis副 本。复制功能是⾼可⽤Redis的基础&#xff0c…

推荐一款高级的安装程序打包工具:Advanced Installer Architect

AdvanCEd Installer Architect是一款高级的安装程序打包工具&#xff0c;我们有时候可能用nsis用的多&#xff0c;Advanced Installer Architect也是一款打包工具&#xff0c;有兴趣的朋友也可以试试。有了Advanced Installer Architect你就可以创建MSI打包。 主要功能 *先进的…

【信号处理】基于联合图像表示的深度学习卷积神经网络

Combined Signal Representations for Modulation Classification Using Deep Learning: Ambiguity Function, Constellation Diagram, and Eye Diagram 信号表示 Ambiguity Function(AF) 模糊函数描述了信号的两个维度(dimensions):延迟(delay)和多普勒(Doppler)。 …

CocosCreator 构建透明背景应用(最新版!!!)

文章目录 透明原理补充设置截图以及代码step1: electron-js mian.jsstep2:ENABLE_TRANSPARENT_CANVASstep3:SOLID_COLOR Transparentstep:4 Build Web phonestep5:package electron-js & change body background-color 效果图补充 透明原理 使用Cocos creator 做桌面应用开…

大数据学习11之Hive优化篇

1.Hive压缩 1.1概述 当前的大数据环境下&#xff0c;机器性能好&#xff0c;节点更多&#xff0c;但并不代表我们无条件直接对数据进行处理&#xff0c;在某些情况下&#xff0c;我们依旧需要对数据进行压缩处理&#xff0c;压缩处理能有效减少存储系统的字节读取数&#xff0…

C++builder中的人工智能(13):SELU激活函数在C++应用中的工作原理

SELU&#xff08;Scaled Exponential Linear Unit&#xff09;激活函数是一种在人工神经网络&#xff08;ANN&#xff09;中使用的高级激活函数。它是由Gnter Klambauer, Thomas Unterthiner, Andreas Mayr在2017年提出的&#xff0c;旨在创建自归一化的神经网络&#xff08;Se…

(2024最新完整详细版)Docker部署MinIO

对象存储MinIO 对象存储是用于存储非结构化数据的数据存储架构&#xff0c;它将一个数据单元称为一个对象&#xff0c;每个对象都包含数据本身、元数据&#xff08;描述数据的信息&#xff09;和一个唯一标识符&#xff08;通常是一个URL地址&#xff09;。 MinIO是一个开源的对…

运用Agent搭建“狼人杀”游戏服务器端!

背景 从23年开年以来&#xff0c;大模型引爆了各行各业。去年比较出圈的是各类文生图的应用&#xff0c;比如Stable Diffusion。网上可以看到各类解释其背后的原理和应用的文章。另外一条平行线&#xff0c;则是文生文的场景。受限于当时LLM&#xff08;大语言模型&#xff09…

性能调优专题(6)之MVCC多版本并发控制

一、概述 Mysql在可重复读隔离级别下如果保证事务较高的隔离性,在上一个篇章有详细介绍,同样的sql语句在一个事务多次执行查询结果相同,就算其他事务对数据进行修改也不会影响到当前事务sql语句的查询结果。 这个隔离性就是靠MVCC(Multi-Version Concurrency Control)机制来…

2022 icpc杭州(F,D,A,C,K)

文章目录 [F. Da Mi Lao Shi Ai Kan De](https://codeforces.com/gym/104090/problem/F)[D. Money Game](https://codeforces.com/gym/104090/problem/D)[A. Modulo Ruins the Legend](https://codeforces.com/gym/104090/problem/A)[C. No Bug No Game](https://codeforces.co…

ArcGIS/QGIS按掩膜提取或栅格裁剪后栅格数据的值为什么变了?

问题描述&#xff1a; 现有一栅格数据&#xff0c;使用ArcGIS或者QGIS按照矢量边界进行按掩膜提取或者栅格裁剪以后&#xff0c;其值的范围发生了变化&#xff0c;如下&#xff1a; 可以看到&#xff0c;不论是按掩膜提取还是进行栅格裁剪后&#xff0c;其值的范围均与原来栅…

机器学习课程总结(个人向)

前言 通过看课件PPT整理的笔记&#xff0c;没有截图 由于大部分内容已经耳熟能详了&#xff0c;故记录比较简略&#xff0c;只记录了一些概念和需要记忆的地方。 里面有较多的个人观点&#xff0c;未必正确。如有错误&#xff0c;还请各位大佬指正 正文 绪论 机器学习的定…