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

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文件中可以直接使用上面两个的头文件了
在这里插入图片描述


http://www.kler.cn/a/549626.html

相关文章:

  • 机器学习·逻辑回归
  • 华为昇腾920b服务器部署DeepSeek翻车现场
  • IPv4 协议和TCP 协议的区别
  • Ruby 文件的输入与输出
  • 【16】思科AireOS:创建使用 LWA 认证的 WLAN
  • 图论入门算法:拓扑排序(C++)
  • 【华为OD机考】华为OD笔试真题解析(7)--基站维修工程师
  • 《qt open3d网格平滑》
  • 143,【3】 buuctf web [GYCTF2020]EasyThinking
  • 【第10章:自然语言处理高级应用—10.1 命名实体识别(NER)与关系抽取的实现与应用】
  • nginx-优化策略
  • Docker 修改配置后无法启动问题
  • 《OpenCV》——特征提取与匹配方法
  • 【Unity3D】Jenkins Pipeline流水线自动构建Apk
  • LeetCode--15. 三数之和
  • 在C++的DLL文件中定义的结构体,在DLL外可以使用吗,如何使用?
  • 兔兔答题应用于微信考试、付费考试、社会调查问卷、明星知识问答、员工培训考核、模拟自测、企业面试、试题库等多种场景。
  • 2D 游戏艺术、动画和光照
  • Oracle序列(基础操作)
  • 排序算法大合集