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