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 .
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 ().
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 ().
Returns all of the numerical segments.
另请参阅 majorVersion (), minorVersion (),和 microVersion ().
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 ().
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 ().
Reads a version number from stream in and stores it in version .
Note that this has nothing to do with QDataStream::version ().