Qt Creator生成动态库(DLL)并调用,保姆级教程
创作时间:
作者:
@小白创作中心
Qt Creator生成动态库(DLL)并调用,保姆级教程
引用
CSDN
1.
https://blog.csdn.net/mamor/article/details/141676972
本文将详细介绍如何在Qt Creator中生成动态库(DLL)并调用。通过本文,你将学会如何创建一个动态库项目,编写函数,并在另一个项目中调用该动态库。
一、动态库的生成
- 建立库文件
- 修改类型为共享库
- 自定义项目名称和项目路径
- 选择编译器
- 选择动态库所需要的模块
- 自定义类名
- 项目总览
- 编辑头文件
- 将
testdynamiclib_global.h中的内容拷贝到testdynamiclib.h中
- 定义函数
- 在
testdynamiclib.h中定义加减乘除四个函数#ifndef TESTDYNAMICLIB_H #define TESTDYNAMICLIB_H class TestDynamicLib { public: TestDynamicLib(); ~TestDynamicLib(); int add(int a, int b); int subtract(int a, int b); int multiply(int a, int b); int divide(int a, int b); }; #endif // TESTDYNAMICLIB_H
- 实现函数功能
- 在
testdynamiclib.cpp中实现上述函数
- 编译运行
- 右键项目,点击qmake编译运行
- 重新构建
- 右键项目,点击重新构建
- 查看生成的库文件
- 构建成功后,会在build目录的debug文件夹中生成dll和lib库文件
二、动态库的调用
- 新建工程
- 自定义项目名
- 选择编译器
- 自定义类名
- 项目预览
- 复制库文件
- 将生成的
.dll、.lib文件以及testdynamiclib.h复制到新项目中
- 在新项目中使用动态库
- 在
main.cpp中包含testdynamiclib.h,并调用动态库中的函数#include <QCoreApplication> #include "testdynamiclib.h" int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); TestDynamicLib lib; qDebug() << "10 + 5 = " << lib.add(10, 5); qDebug() << "10 - 5 = " << lib.subtract(10, 5); qDebug() << "10 * 5 = " << lib.multiply(10, 5); qDebug() << "10 / 5 = " << lib.divide(10, 5); return a.exec(); }
- 配置库路径
- 将dll、lib、h三个文件复制到项目编译所在的位置
- 添加外部库
- 右键项目,选择添加库,选择外部库
- 运行项目
- 运行项目,查看函数调用结果
通过以上步骤,你就可以在Qt Creator中成功生成并调用动态库了。
热门推荐
借贷月利率计算:借款成本的评估
宝宝学走路,家长需关注10关键点
如何认识国库券的特点和作用?这种债券在投资组合中有何地位?
传统水汆丸做法
股价回调时投资者应该如何应对?
建筑如何创造团队精神
怎么取得继承权
从《西游记》看亲职教养:如何陪伴孩子找到自己的方向
如何在多人项目中统一代码质量
C语言如何整合代码
心脏不舒服怎么办?专业医生为您解答
降压药和降血脂药能一起吃吗
降血压药可以停吗?医生的专业解答
电子身份证能否办理银行卡?律师权威解答来了
如何通过短剧的主题活动吸引观众
财务管理者的核心武器:全面解读关键财务指标
夏天到了吃面筋,但你的面筋不是我的面筋
纯电动车每公里使用成本详解:家用民用电充电仅需5分钱
西洋参补什么:对比人参,西洋参补什么更有优势
港澳通行证有效期多久可以入境
RTX3060显卡性能提升与优化技巧
国产DSY151型温压手榴弹:单兵作战大杀器
二战步兵的“开罐器”—二战单兵反坦克手榴弹
牙洞里长息肉会癌变吗?看牙洞息肉不处理的后果
胳膊突然青了一截不知道怎么回事
西湖大学2024年本科录取数据、招生要求
西湖大学2024录取分数线是多少?附2025招生计划、招生简章
终于把统计学中的 T 检验搞懂了!!
个人征信报告的内容有哪些
定投的策略有哪些?这些策略如何选择?