网上做批发网站有哪些河南郑州最近的热搜事件
目录
- 模块化开发
- 封装c++模块并使用
- 封装qml模块并使用
模块化开发
什么是模块化开发呢?
举个例子:
我们有一台台式电脑,我们台式电脑有显卡,内存,磁盘,cpu,键盘,鼠标等
你可以将这些部件当做模块
我们鼠标坏了换鼠标,我们显卡坏了换显卡
以前是焊死在一起的,坏了一块就得全部丢了,现在不一样了,模块化合并?
哪里坏了,替换哪里,哪里更新换代了,我们买个新的换上去就行了?
好了,说回代码,无论是c++,还是qml模块化管理
都离不开 .pri文件 有了它我们可以快速引入到自己的项目中,我们只需要拷贝某个模块项目的程序
然后在我们的程序里面,在工程文件.pro里面使用
include($$PWD/???/demo.pri)
如果是c++模块那么直接用就可以了
如果是qml模块那就我们的main.cpp里面多做一点处理
封装c++模块并使用
假设我想创建一个-----工具库模块叫flutool,里面就放一些工具类,比如 FileUtil, JsonUtil,IdUtil
然后提供给我一个demo项目untitled使用
当然我们也并非一定要创建一个库项目,你创建一个qwidget项目都可以编译成库
只需要修改工程文件*.pro中
TEMPLATE = lib
就可以将我们的项目编译成库,以下是我的项目结构,待会我们主项目untitled
就直接快速引入模块flutool并使用模块里面的东西
我们在flutool项目中创建flutool.pri文件,这个文件就是方便我们快速被其他项目使用的一个文件
在模块项目里面做一些处理,不要生成影子文件
没有影子文件,我们可以看到我们的库生成放到了release文件夹里面了
好,接下来写我们的flutool.pri文件
其中这里面的$$PWD指的是当前pro文件所在的目录,到这里我们的模块程序已经完成了,剩下的就升级优化代码了
HEADERS += \$$PWD/IdUtil.h \#如果不编译成库,则引入cpp
#修改后,与使用的项目一起编译
SOURCES += \INCLUDEPATH += \$$PWD/#编译成库,则导入库
#修改后需要重新编译成库,供其他项目使用
LIBS += \-L$$PWD/release -llibflutool
接下来就很简单了直接在我们主程序工程文件里面使用,就会加载了模块程序的资源了
接下来就是使用了,引入头文件后直接使用
至此,c++模块化开发你已经学会了
封装qml模块并使用
明天再接着写。。。不好意思