Класс QVersionNumber
Класс QVersionNumber содержит номер версии с произвольным количеством сегментов. Подробнее...
| Заголовок: | #include <QVersionNumber> |
| qmake: | QT += core |
| С: | Qt 5.6 |
Этот класс был представлен в Qt 5.6.
Открытые функции
| QVersionNumber(int maj, int min, int mic) | |
| QVersionNumber(int maj, int min) | |
| QVersionNumber(int maj) | |
| QVersionNumber(std::initializer_list<int> args) | |
| QVersionNumber(QVector<int> &&seg) | |
| QVersionNumber(const QVector<int> &seg) | |
| QVersionNumber() | |
| 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(int index) const |
| int | segmentCount() const |
| QVector<int> | segments() const |
| QString | toString() const |
Статические открытые члены
| QVersionNumber | commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2) |
| int | compare(const QVersionNumber &v1, const QVersionNumber &v2) |
| QVersionNumber | fromString(const QString &string, int *suffixIndex = nullptr) |
| QVersionNumber | fromString(QLatin1String string, int *suffixIndex = nullptr) |
| QVersionNumber | fromString(QStringView string, int *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
Документация по функциям-членам
QVersionNumber::QVersionNumber(int maj, int min, int mic)
Создаёт QVersionNumber, состоящий из основных, второстепенных и микро версий maj, min и mic соответственно.
QVersionNumber::QVersionNumber(int maj, int min)
Создаёт QVersionNumber, состоящий из основных и второстепенных номеров версий maj и min соответственно.
QVersionNumber::QVersionNumber(int maj)
Создаёт QVersionNumber, состоящий только из основного номера версии maj.
QVersionNumber::QVersionNumber(std::initializer_list<int> args)
Создаёт номер версии из std::initializer_list, указанной в args.
Этот конструктор доступен только если компилятор поддерживает C++11 initializer lists.
QVersionNumber::QVersionNumber(QVector<int> &&seg)
Перемещающий конструктор номера версии из списка чисел, содержащихся в seg.
Этот конструктор доступен только если компилятор поддерживает C++11 move semantics.
QVersionNumber::QVersionNumber(const QVector<int> &seg)
Создаёт номер версии из списка чисел, содержащихся в seg.
QVersionNumber::QVersionNumber()
Создаёт нулевой номер версии.
См. также isNull().
[static] QVersionNumber QVersionNumber::commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)
QVersionNumber QVersionNumber::commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)
Возвращает номер версии, являющейся родительской версией для v1 и v2.
См. также isPrefixOf().
[static] int QVersionNumber::compare(const QVersionNumber &v1, const QVersionNumber &v2)
Сравнивает v1 с v2 и возвращает целое число, меньшее, равное или большее нуля, в зависимости от того, меньше ли, равно или больше ли v1, чем v2 соответственно.
Сравнения выполняются путём сравнения сегментов v1 и v2, начиная с индекса 0 и двигаясь к концу более длинного списка.
QVersionNumber v1(1, 2); QVersionNumber v2(1, 2, 0); int compare = QVersionNumber::compare(v1, v2); // compare == -1
[static] QVersionNumber QVersionNumber::fromString(const QString &string, int *suffixIndex = nullptr)
Создаёт QVersionNumber из специально отформатированной строки неотрицательных десятичных чисел, разделённых точкой (.).
После разбора числовых сегментов, оставшаяся часть строки считается строкой суффикса. Начальный индекс этой строки будет сохранён в suffixIndex, если он не равен null.
QString string("5.4.0-alpha");
int suffixIndex;
QVersionNumber version = QVersionNumber::fromString(string, &suffixIndex);
// version is 5.4.0
// suffixIndex is 5 См. также isNull().
[static] QVersionNumber QVersionNumber::fromString(QLatin1String string, int *suffixIndex = nullptr)
Это перегруженная функция.
Создаёт QVersionNumber из специально отформатированной строки неотрицательных десятичных чисел, разделённых точкой '.'.
После разбора числовых сегментов, оставшаяся часть строки считается строкой суффикса. Начальный индекс этой строки будет сохранён в suffixIndex, если он не равен null.
QLatin1String string("5.4.0-alpha");
int suffixIndex;
auto version = QVersionNumber::fromString(string, &suffixIndex);
// version is 5.4.0
// suffixIndex is 5 Эта функция была добавлена в Qt 5.10.
См. также isNull().
[static] QVersionNumber QVersionNumber::fromString(QStringView string, int *suffixIndex = nullptr)
Это перегруженная функция.
Создаёт QVersionNumber из специально отформатированной строки неотрицательных десятичных чисел, разделённых точкой '.'.
После разбора числовых сегментов, оставшаяся часть строки считается строкой суффикса. Начальный индекс этой строки будет сохранён в suffixIndex, если он не равен null.
QString string("5.4.0-alpha");
int suffixIndex;
QVersionNumber version = QVersionNumber::fromString(string, &suffixIndex);
// version is 5.4.0
// suffixIndex is 5 Эта функция была добавлена в Qt 5.10.
См. также isNull().
bool QVersionNumber::isNormalized() const
Возвращает true если номер версии не содержит завершающих нулей, в противном случае возвращает false.
См. также normalized().
bool QVersionNumber::isNull() const
Возвращает true если числовых сегментов ноль, в противном случае возвращает false.
См. также segments().
bool QVersionNumber::isPrefixOf(const QVersionNumber &other) const
Возвращает true если текущий номер версии содержится в номере версии other, в противном случае возвращает false.
QVersionNumber v1(5, 3); QVersionNumber v2(5, 3, 1); bool value = v1.isPrefixOf(v2); // true
См. также commonPrefix().
int QVersionNumber::majorVersion() const
Возвращает номер основной версии, то есть первый сегмент. Эта функция эквивалентна segmentAt(0). Если объект QVersionNumber равен null, эта функция возвращает 0.
См. также isNull() и segmentAt().
int QVersionNumber::microVersion() const
Возвращает номер микроверсии, то есть третий сегмент. Эта функция эквивалентна segmentAt(2). Если в этом объекте QVersionNumber нет микрочисла, функция возвращает 0.
См. также isNull() и segmentAt().
int QVersionNumber::minorVersion() const
Возвращает номер дополнительной версии, то есть второй сегмент. Эта функция эквивалентна segmentAt(1). Если в этом объекте QVersionNumber нет дополнительного числа, функция возвращает 0.
См. также isNull() и segmentAt().
QVersionNumber QVersionNumber::normalized() const
Возвращает эквивалентный номер версии, но с удаленными завершающими нулями.
Для проверки эквивалентности чисел используйте normalized() для обоих номеров версии перед сравнением.
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
int QVersionNumber::segmentAt(int index) const
Возвращает значение сегмента по индексу index. Если индекс не существует, возвращает 0.
См. также segments() и segmentCount().
int QVersionNumber::segmentCount() const
Возвращает количество целых чисел, хранящихся в segments().
См. также segments().
QVector<int> QVersionNumber::segments() const
Возвращает все числовые сегменты.
См. также majorVersion(), minorVersion() и microVersion().
QString QVersionNumber::toString() const
Возвращает строку со всеми сегментами, разделёнными точкой (.).
См. также majorVersion(), minorVersion(), microVersion() и segments().
Связанные нечлены
bool operator!=(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs не равно rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
bool operator<(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs меньше rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
QDataStream &operator<<(QDataStream &out, const QVersionNumber &version)
Записывает номер версии version в поток out.
Обратите внимание, что это не имеет ничего общего с QDataStream::version().
bool operator<=(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs меньше или равно rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
bool operator==(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs равно rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
bool operator>(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs больше rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
bool operator>=(const QVersionNumber &lhs, const QVersionNumber &rhs)
Возвращает true если lhs больше или равно rhs; в противном случае возвращает false.
См. также QVersionNumber::compare().
QDataStream &operator>>(QDataStream &in, QVersionNumber &version)
Считывает номер версии из потока in и сохраняет его в version.
Обратите внимание, что это не имеет ничего общего с QDataStream::version().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qversionnumber.html