Qt如何生成和使用DLL动态链接库

生成:

新建一个dll项目:

编译后会生成dll文件:

使用:

新建一个控制台项目:

把dll项目中的两个.h文件复制添加进来:

cpp 复制代码
QT -= gui

CONFIG += c++11 console
CONFIG -= app_bundle

DEFINES += QT_DEPRECATED_WARNINGS

SOURCES += \
        main.cpp
HEADERS += \
        scanfolder.h\
        scanfolder_global.h

LIBS+=E:\Qt\build-test-Desktop_Qt_5_12_9_MinGW_64_bit-Debug\debug\ScanFolder.dll


qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

然后把.dll文件复制到测试项目的编译文件中:

cpp 复制代码
#include <QCoreApplication>
#include "scanfolder.h"
#include "ScanFolder_global.h"
#include<iostream>
using namespace std;
int main()
{
    ScanFolder sf;
    cout<<sf.add(1,2);
}

成功~

相关推荐
丁劲犇几秒前
QMetaObject的invokeMethod异步阻塞调用在MCPServer开发中的巧妙应用
qt·ai·agent·异步·阻塞·mcp·mcp server
橘子编程4 分钟前
MindOS:你的AI第二大脑知识库
java·开发语言·人工智能·计算机网络·ai
aini_lovee10 分钟前
C# 快速搜索磁盘文件解决方案
开发语言·c#
小陈工10 分钟前
2026年4月8日技术资讯洞察:边缘AI推理框架竞争白热化,Python后端开发者的机遇与挑战
开发语言·数据库·人工智能·python·微服务·回归
零二年的冬15 分钟前
epoll详解
java·linux·开发语言·c++·链表
凭君语未可22 分钟前
Java 中的接口是什么
java·开发语言
XiYang-DING23 分钟前
【Java】二叉树
java·开发语言·数据结构
下北沢美食家33 分钟前
JavaScript面试题2
开发语言·javascript·ecmascript
数据知道1 小时前
claw-code 源码分析:大型移植的测试哲学——如何用 unittest 门禁守住「诚实未完成」的口碑?
开发语言·python·ai·claude code·claw code
小堃学编程1 小时前
【项目实战】基于protobuf的发布订阅式消息队列(2)—— 线程池
java·开发语言