Sur cette page

QVersionNumber Class

La classe QVersionNumber contient un numéro de version composé d'un nombre quelconque de segments. En savoir plus...

En-tête : #include <QVersionNumber>
CMake : find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake : QT += core

Comparaisons de QVersionNumber

CatégorieTypes comparables
strongQVersionNumber

Types publics

(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

Fonctions publiques

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

Membres publics statiques

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)

Description détaillée

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

Documentation sur les types de membres

[alias, since 6.8] QVersionNumber::const_iterator

[alias, since 6.8] QVersionNumber::const_reverse_iterator

Définitions de type pour une classe opaque qui implémente un itérateur à accès aléatoire (inversé) sur les segments de ` QVersionNumber `.

Remarque : l'QVersionNumber ne prend pas en charge la modification des segments sur place ; il n'existe donc pas d'itérateur mutable.

Ces définitions de type ont été introduites dans Qt 6.8.

[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

Prévu pour assurer la compatibilité avec le format STL.

Remarque : QVersionNumber ne prend pas en charge la modification des segments in situ ; par conséquent, reference et const_reference, ainsi que pointer et const_pointer, sont des types identiques par paires.

Ces définitions de type ont été introduites dans Qt 6.8.

Documentation des fonctions membres

[noexcept] QVersionNumber::QVersionNumber()

Génère une version nulle.

Voir aussi isNull().

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

Cette fonction construit un numéro de version à partir de la liste de nombres contenue dans ` seg`.

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

Construit un numéro de version à partir de la plage spécifiée par ` args`.

Remarque : dans les versions de Qt antérieures à la version 6.8, QVersionNumber ne pouvait être construit qu'à partir de ` QList`, `QVarLenthArray` ou `std::initializer_list`.

Cette fonction a été introduite dans Qt 6.8.

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

Crée un numéro de version à partir de la liste des nombres contenus dans ` seg`.

[explicit] QVersionNumber::QVersionNumber(int maj)

Crée un objet `QVersionNumber` composé uniquement du numéro de version majeure maj.

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

Construit un numéro de version à partir de la liste d'initialisation std::initializer_list spécifiée par args.

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

Crée un objet `QVersionNumber` composé des numéros de version majeure et mineure, respectivement maj et min.

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

Crée un objet `QVersionNumber` composé des numéros de version majeure, mineure et micro, respectivement : maj, min et mic.

[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

Renvoie respectivement un ` const_iterator ` ou un ` const_reverse_iterator`, pointant vers le premier segment ou le segment suivant le dernier de ce numéro de version.

Remarque : ` QVersionNumber ` ne prend pas en charge la modification des segments sur place ; il n’existe donc pas d’itérateur modifiable.

Ces fonctions ont été introduites dans Qt 6.8.

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

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

Renvoie un numéro de version qui est une version parente à la fois de v1 et de v2.

Voir aussi isPrefixOf().

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

Compare v1 à v2 et renvoie un entier inférieur, égal ou supérieur à zéro, selon que v1 est respectivement inférieur, égal ou supérieur à v2.

Les comparaisons s’effectuent en comparant les segments de v1 et de v2 en partant de l’index 0 et en progressant vers la fin de la liste la plus longue.

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)

Construit une chaîne « QVersionNumber » à partir d’une chaîne « string » spécialement formatée, composée de nombres décimaux non négatifs délimités par un point (.).

Une fois les segments numériques analysés, le reste de la chaîne est considéré comme la chaîne de suffixe. L'index de début de cette chaîne sera stocké dans suffixIndex s'il n'est pas nul.

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

Remarque : dans les versions antérieures à Qt 6.4, cette fonction était surchargée pour QString, QLatin1StringView et QStringView, et suffixIndex était une int*.

Cette fonction a été introduite dans Qt 6.4.

Voir également isNull().

[noexcept] bool QVersionNumber::isNormalized() const

Renvoie « true » si le numéro de version ne contient aucun zéro final ; sinon, renvoie « false ».

Voir aussi normalized().

[noexcept] bool QVersionNumber::isNull() const

Renvoie « true » s'il n'y a aucun segment numérique ; sinon, renvoie « false ».

Voir également segments().

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

Renvoie « true » si le numéro de version actuel figure dans le numéro de version de other; sinon, renvoie « false ».

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

Voir également commonPrefix().

[noexcept] int QVersionNumber::majorVersion() const

Renvoie le numéro de version majeure, c'est-à-dire le premier segment. Cette fonction est équivalente à ` segmentAt(0)`. Si l'objet ` QVersionNumber ` est nul, cette fonction renvoie 0.

Voir également isNull() et segmentAt().

[noexcept] int QVersionNumber::microVersion() const

Renvoie le numéro de version « micro », c'est-à-dire le troisième segment. Cette fonction est équivalente à segmentAt(2). Si cet objet QVersionNumber ne contient pas de numéro « micro », cette fonction renvoie 0.

Voir également isNull() et segmentAt().

[noexcept] int QVersionNumber::minorVersion() const

Renvoie le numéro de version mineure, c'est-à-dire le deuxième segment. Cette fonction est équivalente à segmentAt(1). Si cet objet QVersionNumber ne contient pas de numéro de version mineure, cette fonction renvoie 0.

Voir également isNull() et segmentAt().

QVersionNumber QVersionNumber::normalized() const

Renvoie un numéro de version équivalent, mais dont tous les zéros finaux ont été supprimés.

Pour vérifier si deux nombres sont équivalents, utilisez la fonction `normalized()` sur les deux numéros de version avant d'effectuer la comparaison.

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

Renvoie la valeur du segment à l'adresse index. Si l'index n'existe pas, renvoie 0.

Voir également segments() et segmentCount().

[noexcept] qsizetype QVersionNumber::segmentCount() const

Renvoie le nombre d'entiers stockés dans segments().

Voir également la fonction ` segments()`.

QList<int> QVersionNumber::segments() const

Renvoie tous les segments numériques.

Voir également majorVersion(), minorVersion() et microVersion().

QString QVersionNumber::toString() const

Renvoie une chaîne contenant tous les segments délimités par un point (.).

Voir également majorVersion(), minorVersion(), microVersion() et segments().

Connexes – Non-membres

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

Renvoie « true » si « lhs » n'est pas égal à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Renvoie « true » si « lhs » est inférieur à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Écrit le numéro de version version dans le flux out.

Notez que cela n'a rien à voir avec la fonction QDataStream::version().

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

Renvoie « true » si « lhs » est inférieur ou égal à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Renvoie « true » si « lhs » est égal à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Renvoie « true » si « lhs » est supérieur à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Renvoie « true » si « lhs » est supérieur ou égal à « rhs » ; sinon, renvoie « false ».

Voir également QVersionNumber::compare().

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

Lit un numéro de version à partir du flux in et l'enregistre dans version.

Notez que cela n'a rien à voir avec la fonction QDataStream::version().

© 2026 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.