QVersionNumber Class

Die Klasse QVersionNumber enthält eine Versionsnummer mit einer beliebigen Anzahl von Segmenten. Mehr...

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

Diese Klasse ist stark vergleichbar.

Öffentliche Typen

(since 6.8) const_iterator
(since 6.8) const_pointer
(since 6.8) const_reference
(since 6.8) const_reverse_iterator
(since 6.8) difference_type
(since 6.8) pointer
(since 6.8) reference
(since 6.8) size_type
(since 6.8) value_type

Öffentliche Funktionen

QVersionNumber()
QVersionNumber(QList<int> &&seg)
(since 6.8) QVersionNumber(QSpan<const int> args)
QVersionNumber(const QList<int> &seg)
QVersionNumber(int maj)
QVersionNumber(std::initializer_list<int> args)
QVersionNumber(int maj, int min)
QVersionNumber(int maj, int min, int mic)
(since 6.8) QVersionNumber::const_iterator begin() const
(since 6.8) QVersionNumber::const_iterator cbegin() const
(since 6.8) QVersionNumber::const_iterator cend() const
(since 6.8) QVersionNumber::const_iterator constBegin() const
(since 6.8) QVersionNumber::const_iterator constEnd() const
(since 6.8) QVersionNumber::const_reverse_iterator crbegin() const
(since 6.8) QVersionNumber::const_reverse_iterator crend() const
(since 6.8) QVersionNumber::const_iterator end() const
bool isNormalized() const
bool isNull() const
bool isPrefixOf(const QVersionNumber &other) const
int majorVersion() const
int microVersion() const
int minorVersion() const
QVersionNumber normalized() const
(since 6.8) QVersionNumber::const_reverse_iterator rbegin() const
(since 6.8) QVersionNumber::const_reverse_iterator rend() const
int segmentAt(qsizetype index) const
qsizetype segmentCount() const
QList<int> segments() const
QString toString() const

Statische öffentliche Mitglieder

QVersionNumber commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)
int compare(const QVersionNumber &v1, const QVersionNumber &v2)
(since 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)

Detaillierte Beschreibung

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

Dokumentation der Mitgliedstypen

[alias, since 6.8] QVersionNumber::const_iterator

[alias, since 6.8] QVersionNumber::const_reverse_iterator

Typedefs für eine undurchsichtige Klasse, die einen (umgekehrten) Zufallszugriffs-Iterator über QVersionNumber Segmente implementiert.

Hinweis: QVersionNumber unterstützt nicht das Ändern von Segmenten an Ort und Stelle, daher gibt es keinen veränderbaren Iterator.

Dieses Typedef wurde in Qt 6.8 eingeführt.

[alias, since 6.8] QVersionNumber::const_pointer

[alias, since 6.8] QVersionNumber::const_reference

[alias, since 6.8] QVersionNumber::difference_type

[alias, since 6.8] QVersionNumber::pointer

[alias, since 6.8] QVersionNumber::reference

[alias, since 6.8] QVersionNumber::size_type

[alias, since 6.8] QVersionNumber::value_type

Wird für STL-Kompatibilität bereitgestellt.

Hinweis: QVersionNumber unterstützt nicht das Ändern von Segmenten an Ort und Stelle, daher sind Referenz und const_reference sowie Zeiger und const_pointer paarweise die gleichen Typen.

Dieses Typedef wurde in Qt 6.8 eingeführt.

Dokumentation der Mitgliedsfunktionen

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::begin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::cbegin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::cend() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::constBegin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::constEnd() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::end() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::crbegin() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::crend() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::rbegin() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::rend() const

Gibt ein const_iterator bzw. const_reverse_iterator zurück, das auf das erste bzw. das letzte Segment dieser Versionsnummer zeigt.

Hinweis: QVersionNumber unterstützt nicht das Ändern von Segmenten an Ort und Stelle, daher gibt es keinen veränderbaren Iterator.

Diese Funktion wurde in Qt 6.8 eingeführt.

[noexcept] QVersionNumber::QVersionNumber()

Erzeugt eine Null-Version.

Siehe auch isNull().

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

Move-bildet eine Versionsnummer aus der in seg enthaltenen Liste von Nummern.

[explicit, since 6.8] QVersionNumber::QVersionNumber(QSpan<const int> args)

Konstruiert eine Versionsnummer aus der durch args angegebenen Spanne.

Hinweis: In Qt-Versionen vor 6.8 konnte QVersionNumber nur aus QList, QVarLenthArray oder std::initializer_list konstruiert werden.

Diese Funktion wurde in Qt 6.8 eingeführt.

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

Konstruiert eine Versionsnummer aus der in seg enthaltenen Liste von Nummern.

[explicit] QVersionNumber::QVersionNumber(int maj)

Konstruiert eine QVersionNumber, die nur aus der Hauptversionsnummer maj besteht.

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

Konstruiert eine Versionsnummer aus der durch args angegebenen std::initializer_list.

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

Konstruiert eine QVersionNumber, die aus den Haupt- und Nebenversionsnummern maj bzw. min besteht.

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

Konstruiert eine QVersionNumber, die aus den Haupt-, Neben- und Mikroversionsnummern maj, min bzw. mic besteht.

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

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

Gibt eine Versionsnummer zurück, die eine übergeordnete Version sowohl von v1 als auch von v2 ist.

Siehe auch isPrefixOf().

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

Vergleicht v1 mit v2 und gibt eine ganze Zahl zurück, die kleiner, gleich oder größer als Null ist, je nachdem, ob v1 kleiner, gleich oder größer als v2 ist.

Die Vergleiche werden durchgeführt, indem die Segmente von v1 und v2 verglichen werden, beginnend bei Index 0 und zum Ende der längeren Liste hin.

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)

Konstruiert eine QVersionNumber aus einer speziell formatierten string von nichtnegativen Dezimalzahlen, die durch einen Punkt (.) begrenzt sind.

Nachdem die numerischen Segmente geparst wurden, wird der Rest der Zeichenkette als Suffix-Zeichenkette betrachtet. Der Startindex dieser Zeichenkette wird in suffixIndex gespeichert, wenn er nicht Null ist.

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

Hinweis: In Versionen vor Qt 6.4 wurde diese Funktion stattdessen für QString, QLatin1StringView und QStringView überladen, und suffixIndex war ein int*.

Diese Funktion wurde in Qt 6.4 eingeführt.

Siehe auch isNull().

[noexcept] bool QVersionNumber::isNormalized() const

Gibt true zurück, wenn die Versionsnummer keine nachgestellten Nullen enthält, andernfalls false.

Siehe auch normalized().

[noexcept] bool QVersionNumber::isNull() const

Gibt true zurück, wenn es keine numerischen Segmente gibt, andernfalls false.

Siehe auch segments().

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

Gibt true zurück, wenn die aktuelle Versionsnummer in der Versionsnummer other enthalten ist, andernfalls false.

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

Siehe auch commonPrefix().

[noexcept] int QVersionNumber::majorVersion() const

Gibt die Hauptversionsnummer zurück, d. h. das erste Segment. Diese Funktion ist äquivalent zu segmentAt(0). Wenn dieses QVersionNumber Objekt null ist, gibt diese Funktion 0 zurück.

Siehe auch isNull() und segmentAt().

[noexcept] int QVersionNumber::microVersion() const

Gibt die Mikro-Versionsnummer zurück, d. h. das dritte Segment. Diese Funktion ist äquivalent zu segmentAt(2). Wenn dieses QVersionNumber Objekt keine Mikro-Nummer enthält, gibt diese Funktion 0 zurück.

Siehe auch isNull() und segmentAt().

[noexcept] int QVersionNumber::minorVersion() const

Gibt die Versionsnummer der Unterversion zurück, d. h. das zweite Segment. Diese Funktion ist äquivalent zu segmentAt(1). Wenn dieses QVersionNumber Objekt keine Minor-Nummer enthält, gibt diese Funktion 0 zurück.

Siehe auch isNull() und segmentAt().

QVersionNumber QVersionNumber::normalized() const

Gibt eine äquivalente Versionsnummer zurück, bei der jedoch alle nachgestellten Nullen entfernt wurden.

Um zu prüfen, ob zwei Zahlen gleichwertig sind, verwenden Sie normalized() auf beide Versionsnummern, bevor Sie den Vergleich durchführen.

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

Gibt den Segmentwert an index zurück. Existiert der Index nicht, wird 0 zurückgegeben.

Siehe auch segments() und segmentCount().

[noexcept] qsizetype QVersionNumber::segmentCount() const

Gibt die Anzahl der in segments() gespeicherten Ganzzahlen zurück.

Siehe auch segments().

QList<int> QVersionNumber::segments() const

Gibt alle numerischen Segmente zurück.

Siehe auch majorVersion(), minorVersion(), und microVersion().

QString QVersionNumber::toString() const

Gibt eine Zeichenkette zurück, in der alle Segmente durch einen Punkt getrennt sind (.).

Siehe auch majorVersion(), minorVersion(), microVersion(), und segments().

Verwandte Nicht-Mitglieder

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

Gibt true zurück, wenn lhs nicht gleich rhs ist; andernfalls gibt es false zurück.

Siehe auch QVersionNumber::compare().

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

Gibt true zurück, wenn lhs kleiner als rhs ist; andernfalls gibt es false zurück.

Siehe auch QVersionNumber::compare().

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

Schreibt die Versionsnummer version in den Stream out.

Beachten Sie, dass dies nichts mit QDataStream::version() zu tun hat.

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

Gibt true zurück, wenn lhs kleiner oder gleich rhs ist; andernfalls wird false zurückgegeben.

Siehe auch QVersionNumber::compare().

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

Gibt true zurück, wenn lhs gleich rhs ist; andernfalls wird false zurückgegeben.

Siehe auch QVersionNumber::compare().

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

Gibt true zurück, wenn lhs größer als rhs ist; andernfalls wird false zurückgegeben.

Siehe auch QVersionNumber::compare().

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

Gibt true zurück, wenn lhs größer oder gleich rhs ist; andernfalls wird false zurückgegeben.

Siehe auch QVersionNumber::compare().

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

Liest eine Versionsnummer aus dem Stream in und speichert sie in version.

Beachten Sie, dass dies nichts mit QDataStream::version() zu tun hat.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.