Класс QVersionNumber
Класс QVersionNumber содержит номер версии с произвольным количеством сегментов. Подробнее...
| Заголовок: | #include <QVersionNumber> |
| qmake: | QT += core |
| С тех пор: | Qt 5.6 |
Открытые функции
| QVersionNumber() | |
| QVersionNumber(const QVector<int> &seg) | |
| QVersionNumber(QVector<int> &&seg) | |
| QVersionNumber(std::initializer_list<int> args) | |
| 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(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 = Q_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 содержит номер версии с произвольным количеством сегментов.
QVersionNumber version(1, 2, 3); // 1.2.3
Документация по функциям-членам
QVersionNumber::QVersionNumber()
Создаёт нулевую версию.
См. также isNull().
QVersionNumber::QVersionNumber(const QVector<int> &seg)
Создаёт номер версии из списка чисел, содержащихся в seg.
QVersionNumber::QVersionNumber(QVector<int> &&seg)
Создаёт номер версии, перемещая список чисел из seg.
Этот конструктор доступен только если компилятор поддерживает семантику перемещения C++11.
QVersionNumber::QVersionNumber(std::initializer_list<int> args)
Создаёт номер версии из std::initializer_list, указанной в args.
Этот конструктор доступен только если компилятор поддерживает списки инициализации C++11.
QVersionNumber::QVersionNumber(int maj)
Создаёт QVersionNumber, состоящий только из номера основной версии maj.
QVersionNumber::QVersionNumber(int maj, int min)
Создаёт QVersionNumber, состоящий из номеров основной и дополнительной версии maj и min соответственно.
QVersionNumber::QVersionNumber(int maj, int min, int mic)
Создаёт QVersionNumber, состоящий из номеров основной, дополнительной и микроверсии maj, min и mic соответственно.
[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, равно ли 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 = Q_NULLPTR)
Создаёт QVersionNumber из специально отформатированной строки string с целыми неотрицательными числами, разделёнными точками ('.').
После парсинга числовых сегментов, остальная часть строки считается строкой суффикса. Начальный индекс этой строки будет сохранён в 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().
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/archives/qt-5.6/qversionnumber.html