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

Qt使用pri和pro文件进行模块化编程

假如我想要做一个功能,这个功能用代码模块化实现出来,方便将来移植,比如音视频播放器的界面,将来想要在其他工程使用时,只需要将widget提升为音视频播放界面即可。
当我们其他工程需要这个功能时,我们在调用的时候直接添加源码吗?
如果源文件特别多怎么办?这里就一入了pri文件
1、假设举个例子,假设想要做两个模块化的功能,分别是加法和减法
在这里插入图片描述
2、将加法写在一个类中,减法写在另一个类
在这里插入图片描述

addModule.pri文件,作为加法

HEADERS += \
        $$PWD/addhelper.h

SOURCES += \
        $$PWD/addhelper.cpp

subModule.pri文件

HEADERS += \
        $$PWD/subhelper.h

SOURCES += \
        $$PWD/subhelper.cpp

在calcator中使用上面两个pri文件

在这里插入图片描述

在这里插入图片描述

总工程需要使用模块功能

calcator.pro文件

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

CONFIG += c++17

SOURCES += \
    main.cpp \
    widget.cpp

HEADERS += \
    widget.h

FORMS += \
    widget.ui

INCLUDEPATH += $$PWD/add
include ($$PWD/add/addModule.pri)

INCLUDEPATH += $$PWD/sub
include ($$PWD/sub/subModule.pri)

在widget文件中可以直接使用上面两个的头文件了
在这里插入图片描述

相关文章:

  • 基于YALMIP和cplex工具箱的微电网最优调度算法matlab仿真
  • html 点击弹出视频弹窗
  • PyCharm结合DeepSeek-R1
  • 一场始于 Selector Error 的拯救行动:企查查数据采集故障排查记
  • 苹果AI战略新动向:携手阿里巴巴,深化中国市场布局
  • Win10环境使用Dockerdesktop部署Dify集成Deepseek
  • DeepSeek使用技巧大全(含本地部署教程)
  • IDEA使用codeGPT集合deepseek
  • PyCharm 批量替换
  • pytest测试专题 - 1.3 测试用例发现规则
  • 使用 meshgrid函数绘制网格点坐标的原理与代码实现
  • excel 日期转换
  • Vuex 3.x中检查模块注册的替代方法有哪些?
  • BGP基础协议详解
  • mysql大数据量分页查询
  • PHP 中的除以零错误
  • 基于 Filebeat 的日志收集
  • Python 鼠标轨迹 - 防止游戏检测
  • Django开发入门 – 3.用Django创建一个Web项目
  • 接入 deepseek 实现AI智能问诊
  • 广州地铁十一号线赤沙车辆段工程高坠事故调查报告公布:1人重伤且漏报
  • 外交部:正确认识和对待历史是检验日本能否恪守和平发展承诺的重要标准
  • 【社论】人工智能将为教育带来什么
  • 上海建筑领域绿色发展2025年工作要点发布
  • 2025年度十大IP!IP SH荣膺文化综合类TOP10
  • 欧阳娜娜担任江西吉安文化旅游大使