Spec-Zone.ru › Qt 5.6

Класс QCollator

Класс QCollator сравнивает строки в соответствии с алгоритмом сортировки, локализованным для определенной языковой среды. Подробнее...

Заголовок: #include <QCollator>
qmake: QT += core
С тех пор: Qt 5.2
  • Список всех членов, включая унаследованные члены

Примечание: Все функции в этом классе являются реентерабельными.

Открытые функции

QCollator(const QLocale &locale = QLocale())
QCollator(const QCollator &other)
QCollator(QCollator &&other)
~QCollator()
Qt::CaseSensitivity caseSensitivity() const
int compare(const QString &s1, const QString &s2) const
int compare(const QStringRef &s1, const QStringRef &s2) const
int compare(const QChar *s1, int len1, const QChar *s2, int len2) const
bool ignorePunctuation() const
QLocale locale() const
bool numericMode() const
void setCaseSensitivity(Qt::CaseSensitivity sensitivity)
void setIgnorePunctuation(bool on)
void setLocale(const QLocale &locale)
void setNumericMode(bool on)
QCollatorSortKey sortKey(const QString &string) const
void swap(QCollator &other)
QCollator & operator=(const QCollator &other)
QCollator & operator=(QCollator &&other)

Подробное описание

Класс QCollator сравнивает строки в соответствии с алгоритмом сортировки, локализованным для определенной языковой среды.

QCollator инициализируется с QLocale и необязательной стратегией сортировки. Он пытается инициализировать компаратор заданными значениями. Затем компаратор можно использовать для сравнения и сортировки строк в зависимости от локали.

Объект QCollator может использоваться вместе с основанными на шаблонах алгоритмами сортировки, такими как std::sort, для сортировки списка QStrings.

В дополнение к локали и стратегии сортировки можно установить несколько необязательных флагов, которые влияют на результат сортировки.

Документация по членам-функциям

QCollator::QCollator(const QLocale &locale = QLocale())

Конструирует QCollator из locale. Если locale не указано, используется системная локаль по умолчанию.

См. также setLocale().

QCollator::QCollator(const QCollator &other)

Создает копию other.

QCollator::QCollator(QCollator &&other)

Конструктор перемещения. Перемещает данные из other в этот компаратор.

Обратите внимание, что перемещенный QCollator может быть только уничтожен или присвоен. Эффект вызова других функций, кроме деструктора или одного из операторов присваивания, не определен.

QCollator::~QCollator()

Уничтожает компаратор.

Qt::CaseSensitivity QCollator::caseSensitivity() const

Возвращает чувствительность к регистру компаратора.

См. также setCaseSensitivity().

int QCollator::compare(const QString &s1, const QString &s2) const

Сравнивает s1 с s2. Возвращает целое число меньше, равно или больше нуля в зависимости от того, меньше, равно или больше s1, чем s2.

int QCollator::compare(const QStringRef &s1, const QStringRef &s2) const

Это перегруженная функция.

Сравнивает s1 с s2. Возвращает целое число меньше, равно или больше нуля в зависимости от того, меньше, равно или больше s1, чем s2.

int QCollator::compare(const QChar *s1, int len1, const QChar *s2, int len2) const

Это перегруженная функция.

Сравнивает s1 с s2. len1 и len2 указывают длину массивов QChar, на которые указывают s1 и s2 соответственно.

Возвращает целое число меньше, равно или больше нуля в зависимости от того, меньше, равно или больше s1, чем s2.

bool QCollator::ignorePunctuation() const

Возвращает true если знаки препинания и символы игнорируются при определении порядка сортировки.

См. также setIgnorePunctuation().

QLocale QCollator::locale() const

Возвращает локаль компаратора.

См. также setLocale().

bool QCollator::numericMode() const

Возвращает true если включена сортировка по числам, в противном случае false.

См. также setNumericMode().

void QCollator::setCaseSensitivity(Qt::CaseSensitivity sensitivity)

Устанавливает чувствительность к регистру компаратора.

См. также caseSensitivity().

void QCollator::setIgnorePunctuation(bool on)

Если on установлено в true, знаки препинания и символы игнорируются при определении порядка сортировки.

По умолчанию зависит от локали.

Примечание: Этот метод в настоящее время не поддерживается на платформах Apple или если Qt сконфигурирован так, чтобы не использовать ICU на Linux.

См. также ignorePunctuation().

void QCollator::setLocale(const QLocale &locale)

Устанавливает локаль компаратора на locale.

См. также locale().

void QCollator::setNumericMode(bool on)

Включает режим сортировки по числам, если on установлено в true.

Это позволит правильно сортировать числовые цифры, так что, например, 100 будет отсортировано после 99.

По умолчанию этот режим выключен.

Примечание: В Windows эта функциональность использует библиотеку ICU. Если Qt был скомпилирован без поддержки ICU, он переходит к коду, использующему нативные API Windows, который работает только с Windows 7 и новее. На более старых версиях Windows он не будет работать, и во время выполнения будет выдано предупреждение.

См. также numericMode().

QCollatorSortKey QCollator::sortKey(const QString &string) const

Возвращает sortKey для string.

Создание ключа сортировки обычно немного медленнее, чем непосредственное использование методов compare(). Но если строка сравнивается многократно (например, при сортировке целого списка строк), обычно быстрее создать ключи сортировки для каждой строки и затем отсортировать по этим ключам.

void QCollator::swap(QCollator &other)

Меняет местами этот коллатор с other. Эта функция очень быстрая и никогда не терпит неудач.

QCollator &QCollator::operator=(const QCollator &other)

Присваивает other этому коллатору.

QCollator &QCollator::operator=(QCollator &&other)

Перемещает присвоение из other этому коллатору.

Обратите внимание, что перемещённый QCollator может быть только уничтожен или переприсвоен. Эффект вызова других функций, кроме деструктора или одного из операторов присваивания, не определён.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qcollator.html

Spec-Zone.ru

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