Spec-Zone.ru › Qt 5.6

Класс 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API