QT QVersionNumber 比较版本号大小

软件升级经常需要对升级包的版本与当前版本进行比较,如果升级包的版本大于当前版本才允许进行升级。一般而言,都是拆分字符串,然后逐个比较字符大小来判断软件版本的大小。但如果你使用的是QT环境,那么可以通过 QVersionNumber 来简化这一过程。

cpp 复制代码
#include <QApplication>
#include <QVersionNumber>
#include <QDebug>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QVersionNumber preVersion = QVersionNumber::fromString("1.0.5.31");
    QVersionNumber curVersion = QVersionNumber::fromString("1.0.5.32");
    
    QString verPrev = preVersion.toString();
    QString verCurr = curVersion.toString();
    qDebug() << "verPrev=" << verPrev;
    qDebug() << "verCurr=" << verCurr;

    if(preVersion < curVersion){
        qDebug() << "preVersion is less than curVersion";
    }
    else if(preVersion == curVersion){
        qDebug() << "preVersion is equal to curVersion";
    }
    else{
        qDebug() << "curVersion is less than preVersion";
    }

    return a.exec();
}
相关推荐
Summer_Uncle9 分钟前
【QT学习】qt项目使用MySQL数据库
数据库·qt·学习
Henry Zhu12319 分钟前
Qt样式系统详解(上)
qt
深蓝海拓30 分钟前
PySide6从0开始学习的笔记(二十三)使用QRunnable在线程池中执行临时任务
笔记·python·qt·学习·pyqt
嘿嘿潶黑黑1 小时前
关于QButtonGroup 在Qt5和Qt6之间的差异
开发语言·qt
hqwest1 小时前
码上通QT实战09--监控页面01-区域划分
开发语言·qt·layout·qss·qt 布局
mingren_13141 小时前
c++和qml交互
c++·qt·交互
cn_mengbei2 小时前
鸿蒙PC原生应用开发避坑指南:Qt 6.6与Electron 28兼容性问题全解析
qt·electron·harmonyos
cn_mengbei2 小时前
鸿蒙PC上Qt原生应用开发:从零搭建开发环境到部署实战,附HarmonyOS SDK配置与避坑指南(C++实现)
c++·qt·harmonyos
cn_mengbei2 小时前
鸿蒙PC跨端开发实战:从Qt环境配置到Electron应用鸿蒙化的完整指南
qt·electron·harmonyos
六点的晨曦2 小时前
Qt常用的开发架构模式与UI组件
qt·ui·架构