QVersionNumber 类

QVersionNumber 类包含具有任意数量段的版本号。 更多...

头: #include <QVersionNumber>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

公共函数

QVersionNumber ()
QVersionNumber (const QList<int> & seg )
QVersionNumber (QList<int> && seg )
QVersionNumber (std::initializer_list<int> args )
(从 6.4 起) QVersionNumber (const QVarLengthArray<int, N> & seg )
QVersionNumber (int maj )
QVersionNumber (int maj , int min )
QVersionNumber (int maj , int min , int mic )
bool isNormalized () const
bool isNull () const
bool isPrefixOf (const QVersionNumber & other ) const
int majorVersion () const
int microVersion () const
int minorVersion () const
QVersionNumber normalized () const
int segmentAt (qsizetype index ) const
qsizetype segmentCount () const
QList<int> segments () const
QString toString () const

静态公共成员

QVersionNumber commonPrefix (const QVersionNumber & v1 , const QVersionNumber & v2 )
int compare (const QVersionNumber & v1 , const QVersionNumber & v2 )
(从 6.4 起) QVersionNumber fromString (QAnyStringView string , qsizetype * suffixIndex = nullptr)
bool operator!= (const QVersionNumber & lhs , const QVersionNumber & rhs )
bool operator< (const QVersionNumber & lhs , const QVersionNumber & rhs )
QDataStream & operator<< (QDataStream & out , const QVersionNumber & version )
bool operator<= (const QVersionNumber & lhs , const QVersionNumber & rhs )
bool operator== (const QVersionNumber & lhs , const QVersionNumber & rhs )
bool operator> (const QVersionNumber & lhs , const QVersionNumber & rhs )
bool operator>= (const QVersionNumber & lhs , const QVersionNumber & rhs )
QDataStream & operator>> (QDataStream & in , QVersionNumber & version )

详细描述

QVersionNumber version(1, 2, 3);  // 1.2.3
					

成员函数文档编制

[noexcept] QVersionNumber:: QVersionNumber ()

Produces a null version.

另请参阅 isNull ().

[explicit] QVersionNumber:: QVersionNumber (const QList < int > & seg )

Constructs a version number from the list of numbers contained in seg .

[explicit] QVersionNumber:: QVersionNumber ( QList < int > && seg )

Move-constructs a version number from the list of numbers contained in seg .

QVersionNumber:: QVersionNumber ( std::initializer_list < int > args )

Constructs a version number from the std::initializer_list specified by args .

[explicit, since 6.4] template <qsizetype N> QVersionNumber:: QVersionNumber (const QVarLengthArray < int , N > & seg )

Constructs a version number from the list of numbers contained in seg .

该函数在 Qt 6.4 引入。

[explicit] QVersionNumber:: QVersionNumber ( int maj )

Constructs a QVersionNumber consisting of just the major version number maj .

[explicit] QVersionNumber:: QVersionNumber ( int maj , int min )

Constructs a QVersionNumber consisting of the major and minor version numbers maj and min ,分别。

[explicit] QVersionNumber:: QVersionNumber ( int maj , int min , int mic )

Constructs a QVersionNumber consisting of the major, minor, and micro version numbers maj , min and mic ,分别。

[static] QVersionNumber QVersionNumber:: commonPrefix (const QVersionNumber & v1 , const QVersionNumber & v2 )

QVersionNumber QVersionNumber::commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)

Returns a version number that is a parent version of both v1 and v2 .

另请参阅 isPrefixOf ().

[static noexcept] int QVersionNumber:: compare (const QVersionNumber & v1 , const QVersionNumber & v2 )

比较 v1 with v2 and returns an integer less than, equal to, or greater than zero, depending on whether v1 is less than, equal to, or greater than v2 ,分别。

Comparisons are performed by comparing the segments of v1 and v2 starting at index 0 and working towards the end of the longer list.

QVersionNumber v1(1, 2);
QVersionNumber v2(1, 2, 0);
int compare = QVersionNumber::compare(v1, v2); // compare == -1
					

[static, since 6.4] QVersionNumber QVersionNumber:: fromString ( QAnyStringView string , qsizetype * suffixIndex = nullptr)

构造 QVersionNumber from a specially formatted string of non-negative decimal numbers delimited by a period ( . ).

Once the numerical segments have been parsed, the remainder of the string is considered to be the suffix string. The start index of that string will be stored in suffixIndex if it is not null.

QLatin1StringView string("5.4.0-alpha");
qsizetype suffixIndex;
auto version = QVersionNumber::fromString(string, &suffixIndex);
// version is 5.4.0
// suffixIndex is 5
					

注意: In versions prior to Qt 6.4, this function was overloaded for QString , QLatin1StringView and QStringView instead, and suffixIndex was an int* .

该函数在 Qt 6.4 引入。

另请参阅 isNull ().

[noexcept] bool QVersionNumber:: isNormalized () const

返回 true if the version number does not contain any trailing zeros, otherwise returns false .

另请参阅 normalized ().

[noexcept] bool QVersionNumber:: isNull () const

返回 true if there are zero numerical segments, otherwise returns false .

另请参阅 segments ().

[noexcept] bool QVersionNumber:: isPrefixOf (const QVersionNumber & other ) const

返回 true if the current version number is contained in the other version number, otherwise returns false .

QVersionNumber v1(5, 3);
QVersionNumber v2(5, 3, 1);
bool value = v1.isPrefixOf(v2); // true
					

另请参阅 commonPrefix ().

[noexcept] int QVersionNumber:: majorVersion () const

Returns the major version number, that is, the first segment. This function is equivalent to segmentAt (0). If this QVersionNumber object is null, this function returns 0.

另请参阅 isNull () 和 segmentAt ().

[noexcept] int QVersionNumber:: microVersion () const

Returns the micro version number, that is, the third segment. This function is equivalent to segmentAt (2). If this QVersionNumber object does not contain a micro number, this function returns 0.

另请参阅 isNull () 和 segmentAt ().

[noexcept] int QVersionNumber:: minorVersion () const

Returns the minor version number, that is, the second segment. This function is equivalent to segmentAt (1). If this QVersionNumber object does not contain a minor number, this function returns 0.

另请参阅 isNull () 和 segmentAt ().

QVersionNumber QVersionNumber:: normalized () const

Returns an equivalent version number but with all trailing zeros removed.

To check if two numbers are equivalent, use normalized() on both version numbers before performing the compare.

QVersionNumber v1(5, 4);
QVersionNumber v2(5, 4, 0);
bool equivalent = v1.normalized() == v2.normalized();
bool equal = v1 == v2;
// equivalent is true
// equal is false
					

[noexcept] int QVersionNumber:: segmentAt ( qsizetype index ) const

Returns the segment value at index . If the index does not exist, returns 0.

另请参阅 segments () 和 segmentCount ().

[noexcept] qsizetype QVersionNumber:: segmentCount () const

Returns the number of integers stored in segments ().

另请参阅 segments ().

QList < int > QVersionNumber:: segments () const

Returns all of the numerical segments.

另请参阅 majorVersion (), minorVersion (),和 microVersion ().

QString QVersionNumber:: toString () const

Returns a string with all of the segments delimited by a period ( . ).

另请参阅 majorVersion (), minorVersion (), microVersion (),和 segments ().

相关非成员

[noexcept] bool operator!= (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs 不等于 rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

[noexcept] bool operator< (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs 小于 rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

QDataStream & operator<< ( QDataStream & out , const QVersionNumber & version )

Writes the version number version 到流 out .

Note that this has nothing to do with QDataStream::version ().

[noexcept] bool operator<= (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs <= rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

[noexcept] bool operator== (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs 等于 rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

[noexcept] bool operator> (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs 大于 rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

[noexcept] bool operator>= (const QVersionNumber & lhs , const QVersionNumber & rhs )

返回 true if lhs >= rhs ;否则返回 false .

另请参阅 QVersionNumber::compare ().

QDataStream & operator>> ( QDataStream & in , QVersionNumber & version )

Reads a version number from stream in and stores it in version .

Note that this has nothing to do with QDataStream::version ().