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中成功生成并调用动态库了。
热门推荐
济南地铁4号线最新进展:通勤福音来了!
济南地铁4号线年底通车:贯穿城市东西的交通新选择
济南地铁4号线:攻克三大难关,助力泉城交通新突破
猪肉部位选择攻略,包饺子最佳猪肉部位大揭秘
秋冬护肤必修课:妙佑医疗国际专家详解皱纹预防全攻略
微拉美除皱术:面部年轻化的黑科技
孩子捣乱背后的三大真相:从心理学视角解读与引导
正向教养:用理解和引导培养自律的孩子
南禅寺美食街:无锡必打卡宝藏地!
怎样挑选无毒的好陶瓷碗?陶瓷碗的选购方法和技巧
中国掀起无人机表演热
脾胃虚寒吃烤面包?胃结石能靠喝可乐消除?......这些冷门处方,真有用吗?
上海环球金融中心:浦东新区新地标
上海环球金融中心:陆家嘴的标志性奇迹
上海环球金融中心:改造期间如何打卡陆家嘴天际线?
新年到!教你写出最牛福字,赢支付宝红包
恭王府福字碑:春节必打卡的文化符号
福字的前世今生:从甲骨文到春联
X玖少年团与哇唧唧哇共同进步,综艺、音乐、影视多方面全面开花
圣诞节温馨祝福:让爱传递
血色素低需输血?这些关键知识点要牢记!
你家冰箱里的牛奶还安全吗?
过期牛奶浇花,植物也能喝“奶”
过期牛奶也能做美味糕点?你信吗?
过期牛奶大变身:美容护肤与清洁妙用全攻略
过期牛奶的神奇去污术:从地板到皮肤的全方位清洁指南
周末去哪儿?惠山古镇&梅园一日游攻略
炉甘石洗剂:常见皮肤问题的正确使用指南
冬游河北河南:湾里庙、西大街、云台山必打卡!
河北河南自驾游:打卡四大名胜