Spec-Zone.ru › Qt 5.13

Класс QStringRef

Класс QStringRef предоставляет тонкий оберточный класс для подстрок класса QString. Подробнее...

Заголовок: #include <QStringRef>
qmake: QT += core
С: Qt 4.3

Этот класс был введён в Qt 4.3.

  • Список всех членов, включая унаследованные
  • Устаревшие члены

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

Открытые типы

typedef const_iterator
typedef const_reverse_iterator

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

QStringRef(const QStringRef &other)
QStringRef(const QString *string)
QStringRef(const QString *string, int position, int length)
QStringRef()
QStringRef & operator=(const QStringRef &other)
~QStringRef()
QStringRef appendTo(QString *string) const
const QChar at(int position) const
QChar back() const
QStringRef::const_iterator begin() const
QStringRef::const_iterator cbegin() const
QStringRef::const_iterator cend() const
void chop(int n)
QStringRef chopped(int len) const
void clear()
int compare(const QString &other, Qt::CaseSensitivity cs = ...) const
int compare(const QStringRef &other, Qt::CaseSensitivity cs = ...) const
int compare(QLatin1String other, Qt::CaseSensitivity cs = ...) const
int compare(const QByteArray &other, Qt::CaseSensitivity cs = ...) const
QStringRef::const_iterator constBegin() const
const QChar * constData() const
QStringRef::const_iterator constEnd() const
bool contains(const QString &str, Qt::CaseSensitivity cs = ...) const
bool contains(QChar ch, Qt::CaseSensitivity cs = ...) const
bool contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(const QStringRef &str, Qt::CaseSensitivity cs = ...) const
int count() const
int count(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int count(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QStringRef::const_reverse_iterator crbegin() const
QStringRef::const_reverse_iterator crend() const
const QChar * data() const
QStringRef::const_iterator end() const
bool endsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QChar front() const
int indexOf(const QString &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int indexOf(QChar ch, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int indexOf(QLatin1String str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int indexOf(const QStringRef &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool isEmpty() const
bool isNull() const
bool isRightToLeft() const
int lastIndexOf(const QString &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int lastIndexOf(QChar ch, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int lastIndexOf(QLatin1String str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int lastIndexOf(const QStringRef &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QStringRef left(int n) const
int length() const
int localeAwareCompare(const QString &other) const
int localeAwareCompare(const QStringRef &other) const
QStringRef mid(int position, int n = ...) const
int position() const
QStringRef::const_reverse_iterator rbegin() const
QStringRef::const_reverse_iterator rend() const
QStringRef right(int n) const
int размер() const
QVector<QStringRef> split(const QString &sep, QString::SplitBehavior behavior = QString::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QVector<QStringRef> split(QChar sep, QString::SplitBehavior behavior = QString::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool начинаетсяС(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool начинаетсяС(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool начинаетсяС(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool начинаетсяС(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool начинаетсяС(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
const QString * строка() const
double toDouble(bool *ok = nullptr) const
float toFloat(bool *ok = nullptr) const
int toInt(bool *ok = nullptr, int base = 10) const
QByteArray toLatin1() const
QByteArray toLocal8Bit() const
long toLong(bool *ok = nullptr, int base = 10) const
qlonglong toLongLong(bool *ok = nullptr, int base = 10) const
short toShort(bool *ok = nullptr, int base = 10) const
QString toString() const
uint toUInt(bool *ok = nullptr, int base = 10) const
ulong toULong(bool *ok = nullptr, int base = 10) const
qulonglong toULongLong(bool *ok = nullptr, int base = 10) const
ushort toUShort(bool *ok = nullptr, int base = 10) const
QVector<uint> toUcs4() const
QByteArray toUtf8() const
QStringRef обрезанная() const
void truncate(int position)
const QChar * unicode() const
bool operator!=(const char *s) const
bool operator<(const char *s) const
bool operator<=(const char *s) const
QStringRef & operator=(const QString *string)
bool operator==(const char *s) const
bool operator>(const char *s) const
bool operator>=(const char *s) const
QChar operator[](int position) const

Статические публичные члены

int compare(const QStringRef &s1, const QString &s2, Qt::CaseSensitivity cs = ...)
int compare(const QStringRef &s1, const QStringRef &s2, Qt::CaseSensitivity cs = ...)
int compare(const QStringRef &s1, QLatin1String s2, Qt::CaseSensitivity cs = ...)
int localeAwareCompare(const QStringRef &s1, const QString &s2)
int localeAwareCompare(const QStringRef &s1, const QStringRef &s2)

Связанные нечлены

bool operator<(const QStringRef &s1, const QStringRef &s2)
bool operator<=(const QStringRef &s1, const QStringRef &s2)
bool operator==(const QStringRef &s1, const QStringRef &s2)
bool operator==(const QString &s1, const QStringRef &s2)
bool operator==(QLatin1String s1, const QStringRef &s2)
bool operator>(const QStringRef &s1, const QStringRef &s2)
bool operator>=(const QStringRef &s1, const QStringRef &s2)

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

QStringRef предоставляет только для чтения подмножество API QString.

Ссылка на строку явно ссылается на часть строки string() с заданным размером размера(), начиная со специфической позиции position(). Вызов toString() возвращает копию данных в виде экземпляра реального QString.

Этот класс разработан для повышения производительности обработки подстрок при манипулировании подстроками, полученными из существующих экземпляров QString. QStringRef избегает накладных расходов на выделение памяти и подсчет ссылок стандартного QString, просто ссылаясь на часть исходной строки. Это может оказаться выгодным в коде низкого уровня, таком как код, используемый в анализаторе, ценой потенциально более сложного кода.

Для большинства пользователей нет семантических преимуществ использования QStringRef вместо QString, так как QStringRef требует внимания к проблемам управления памятью, что потенциально делает код более сложным для написания и поддержки.

Предупреждение: QStringRef действителен только до тех пор, пока существует ссылаемая строка. Если исходная строка удалена, ссылка на строку указывает на недействительный адрес памяти.

Мы рекомендуем использовать этот класс только в стабильном коде, где профилирование ясно показало, что можно улучшить производительность, заменив стандартные операции со строками оптимизированной обработкой подстрок, предоставляемой этим классом.

См. также Неявные общие классы.

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

typedef QStringRef::const_iterator

Этот typedef предоставляет итератор const-итератор в стиле STL для QStringRef.

Этот typedef был представлен в Qt 5.4.

См. также QStringRef::const_reverse_iterator.

typedef QStringRef::const_reverse_iterator

Этот typedef предоставляет обратный итератор const-итератор в стиле STL для QStringRef.

Этот typedef был представлен в Qt 5.7.

См. также QStringRef::const_iterator.

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

QStringRef::QStringRef(const QStringRef &other)

Создает копию ссылки на строку other.

QStringRef::QStringRef(const QString *string)

Создает ссылку на строку для заданной строки string.

QStringRef::QStringRef(const QString *string, int position, int length)

Создает ссылку на строку на диапазон символов в заданной строке string, определяемый начальной position и length в символах.

Предупреждение: Эта функция существует для максимального повышения производительности и не выполняет проверки границ. Для правильности программы position и length должны описывать допустимую подстроку string.

Это означает, что начальная position должна быть положительной или 0 и меньше длины string, а length должна быть положительной или 0, но меньше, чем длина строки минус начальная position; т.е. должны выполняться оба условия: 0 <= position < string->length() и 0 <= length <= string->length() - position.

QStringRef::QStringRef()

Создает пустую ссылку на строку.

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

Присваивает ссылку на строку other этой ссылке на строку и возвращает результат.

QStringRef::~QStringRef()

Удаляет ссылку на строку.

Поскольку этот класс используется только для ссылки на данные строки и не берет на себя их владение, память не освобождается при уничтожении экземпляров.

QStringRef QStringRef::appendTo(QString *string) const

Добавляет ссылку на строку в string и возвращает новую ссылку на объединенные данные строки.

const QChar QStringRef::at(int position) const

Возвращает символ по заданному индексу position в строке-ссылке.

position должен быть допустимым индексом позиции в строке (т.е. 0 <= position < size()).

QChar QStringRef::back() const

Возвращает последний символ в строке. То же, что и at(size() - 1).

Эта функция предоставляется для совместимости со STL.

Предупреждение: Вызов этой функции для пустой строки приводит к неопределённому поведению.

Эта функция была представлена в Qt 5.10.

См. также front(), at() и operator[]().

QStringRef::const_iterator QStringRef::begin() const

Возвращает const-итератор в стиле STL, указывающий на первый символ в строке.

Эта функция была представлена в Qt 5.4.

См. также cbegin(), constBegin(), end(), constEnd(), rbegin() и rend().

QStringRef::const_iterator QStringRef::cbegin() const

Аналогично begin().

Эта функция была представлена в Qt 5.4.

См. также begin(), constBegin(), cend(), constEnd(), rbegin() и rend().

QStringRef::const_iterator QStringRef::cend() const

Аналогично end().

Эта функция была представлена в Qt 5.4.

См. также end(), constEnd(), cbegin(), constBegin(), rbegin() и rend().

void QStringRef::chop(int n)

Удаляет n символов из конца строки.

Если n больше или равно size(), результат — пустая строка; если n отрицательно, это эквивалентно передаче нуля.

Эта функция была представлена в Qt 5.8.

См. также QString::chop() и truncate().

QStringRef QStringRef::chopped(int len) const

Возвращает ссылку на подстроку на size() - len левых символов этой строки.

Примечание: Поведение неопределено, если len отрицательно или больше size().

Эта функция была представлена в Qt 5.10.

См. также endsWith(), left(), right(), mid(), chop() и truncate().

void QStringRef::clear()

Очищает содержимое ссылки на строку, сделав её нулевой и пустой.

См. также isEmpty() и isNull().

[static] int QStringRef::compare(const QStringRef &s1, const QString &s2, Qt::CaseSensitivity cs = ...)

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

Если cs имеет значение Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Эта функция была представлена в Qt 4.5.

int QStringRef::compare(const QString &other, Qt::CaseSensitivity cs = ...) const

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

Сравнивает эту строку со строкой other и возвращает целое число меньше, равно или больше нуля, если эта строка меньше, равна или больше строки other.

Если cs имеет значение Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Эквивалентно compare(*this, other, cs).

Эта функция была представлена в Qt 4.5.

int QStringRef::compare(const QStringRef &other, Qt::CaseSensitivity cs = ...) const

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

Сравнивает эту строку со строкой other и возвращает целое число меньше, равно или больше нуля, если эта строка меньше, равна или больше строки other.

Если cs имеет значение Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Эквивалентно compare(*this, other, cs).

Эта функция была представлена в Qt 4.5.

int QStringRef::compare(QLatin1String other, Qt::CaseSensitivity cs = ...) const

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

Сравнивает эту строку с другой строкой и возвращает целое число, меньшее, равное или больше нуля, если эта строка меньше, равна или больше другой строки.

Если cs равно Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Эквивалентно compare(*this, other, cs).

Функция была добавлена в Qt 4.5.

int QStringRef::compare(const QByteArray &other, Qt::CaseSensitivity cs = ...) const

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

Сравнивает эту строку с other и возвращает целое число, меньшее, равное или больше нуля, если эта строка меньше, равна или больше массива байтов other, интерпретируемого как последовательность UTF-8.

Если cs равно Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Эквивалентно compare(*this, other, cs).

Функция была добавлена в Qt 5.8.

[static] int QStringRef::compare(const QStringRef &s1, const QStringRef &s2, Qt::CaseSensitivity cs = ...)

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

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

Если cs равно Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Функция была добавлена в Qt 4.5.

[static] int QStringRef::compare(const QStringRef &s1, QLatin1String s2, Qt::CaseSensitivity cs = ...)

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

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

Если cs равно Qt::CaseSensitive, сравнение выполняется с учетом регистра; в противном случае сравнение выполняется без учета регистра.

Функция была добавлена в Qt 4.5.

QStringRef::const_iterator QStringRef::constBegin() const

То же, что и begin().

Функция была добавлена в Qt 5.9.

См. также begin(), cend(), constEnd(), rbegin(), и rend().

const QChar *QStringRef::constData() const

То же, что и unicode().

QStringRef::const_iterator QStringRef::constEnd() const

То же, что и end().

Функция была добавлена в Qt 5.9.

См. также end(), cend(), cbegin(), constBegin(), rbegin(), и rend().

bool QStringRef::contains(const QString &str, Qt::CaseSensitivity cs = ...) const

Возвращает true если эта строковая ссылка содержит вхождение строки str; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также indexOf() и count().

bool QStringRef::contains(QChar ch, Qt::CaseSensitivity cs = ...) const

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

Возвращает true если эта строка содержит вхождение символа ch; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

bool QStringRef::contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает true если эта строковая ссылка содержит вхождение строки str; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также indexOf() и count().

bool QStringRef::contains(const QStringRef &str, Qt::CaseSensitivity cs = ...) const

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

Возвращает true если эта строковая ссылка содержит вхождение строковой ссылки str; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также indexOf() и count().

int QStringRef::count() const

Возвращает количество символов, на которые ссылается строковая ссылка. Эквивалентно size() и length().

См. также position() и string().

int QStringRef::count(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает количество (возможно перекрывающихся) вхождений строки str в этой строковой ссылке.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также QString::count(), contains(), и indexOf().

int QStringRef::count(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает количество вхождений символа ch в строковой ссылке.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также QString::count(), contains(), и indexOf().

int QStringRef::count(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает количество (возможно перекрывающихся) вхождений строковой ссылки str в этой строковой ссылке.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск выполняется с учетом регистра; в противном случае поиск выполняется без учета регистра.

Функция была добавлена в Qt 4.8.

См. также QString::count(), contains(), и indexOf().

QStringRef::const_reverse_iterator QStringRef::crbegin() const

То же, что и rbegin().

Функция была добавлена в Qt 5.7.

См. также begin(), rbegin(), и rend().

QStringRef::const_reverse_iterator QStringRef::crend() const

То же, что и rend().

Функция была добавлена в Qt 5.7.

См. также end(), rend(), и rbegin().

const QChar *QStringRef::data() const

То же, что и unicode().

QStringRef::const_iterator QStringRef::end() const

Возвращает константный итератор STL-стиля, указывающий на воображаемый символ после последнего символа в списке.

Функция была добавлена в Qt 5.4.

См. также cbegin(), constBegin(), end(), constEnd(), rbegin(), и rend().

bool QStringRef::endsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает true если строковая ссылка оканчивается на str; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Эта функция была представлена в Qt 4.8.

См. также QString::endsWith() и startsWith().

bool QStringRef::endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была представлена в Qt 5.10.

См. также QString::endsWith() и startsWith().

bool QStringRef::endsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была представлена в Qt 4.8.

См. также QString::endsWith() и endsWith().

bool QStringRef::endsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает true если строковая ссылка заканчивается на ch; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Эта функция была представлена в Qt 4.8.

См. также QString::endsWith() и endsWith().

bool QStringRef::endsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была представлена в Qt 4.8.

См. также QString::endsWith() и endsWith().

QChar QStringRef::front() const

Возвращает первый символ в строке. То же, что и at(0).

Эта функция предоставлена для совместимости со STL.

Предупреждение: Вызов этой функции для пустой строки приводит к неопределённому поведению.

Эта функция была представлена в Qt 5.10.

См. также back(), at(), и operator[]().

int QStringRef::indexOf(const QString &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает индекс первого вхождения строки str в этой строковой ссылке, выполняя поиск вперёд с индекса from. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Если from равно -1, поиск начинается с последнего символа; если -2, со следующего за последним и так далее.

Эта функция была представлена в Qt 4.8.

См. также QString::indexOf(), lastIndexOf(), contains(), и count().

int QStringRef::indexOf(QChar ch, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает индекс первого вхождения символа ch в строковой ссылке, выполняя поиск вперёд с индекса from. Возвращает -1, если ch не найдено.

Эта функция была представлена в Qt 4.8.

См. также QString::indexOf(), lastIndexOf(), contains(), и count().

int QStringRef::indexOf(QLatin1String str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает индекс первого вхождения строки str в этой строковой ссылке, выполняя поиск вперёд с индекса from. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Если from равно -1, поиск начинается с последнего символа; если -2, со следующего за последним и так далее.

Эта функция была представлена в Qt 4.8.

См. также QString::indexOf(), lastIndexOf(), contains(), и count().

int QStringRef::indexOf(const QStringRef &str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает индекс первого вхождения строковой ссылки str в эту строковую ссылку, выполняя поиск вперёд с индекса from. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Эта функция была представлена в Qt 4.8.

См. также QString::indexOf(), lastIndexOf(), contains(), и count().

bool QStringRef::isEmpty() const

Возвращает true если строковая ссылка не содержит символов; в противном случае возвращает false.

Строковая ссылка пуста, если её размер равен нулю.

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

bool QStringRef::isNull() const

Возвращает true если эта строковая ссылка не ссылается на строку или если строка, на которую она ссылается, равна null (т. е. QString::isNull() равно true).

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

bool QStringRef::isRightToLeft() const

Возвращает true если строка читается справа налево.

Эта функция была представлена в Qt 5.9.

См. также QString::isRightToLeft().

int QStringRef::lastIndexOf(const QString &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает индекс последнего вхождения строки str в этой строковой ссылке, выполняя поиск назад с индекса from. Если from равно -1 (по умолчанию), поиск начинается с последнего символа; если from равно -2, со следующего за последним и так далее. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Эта функция была представлена в Qt 4.8.

См. также QString::lastIndexOf(), indexOf(), contains(), и count().

int QStringRef::lastIndexOf(QChar ch, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает индекс последнего вхождения символа ch, выполняя поиск назад с позиции from.

Эта функция была представлена в Qt 4.8.

См. также QString::lastIndexOf(), indexOf(), contains(), и count().

int QStringRef::lastIndexOf(QLatin1String str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает индекс последнего вхождения строки str в этой строке, выполняя поиск назад с индекса from. Если from равно -1 (по умолчанию), поиск начинается с последнего символа; если from равно -2, с предпоследнего символа и так далее. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Функция была представлена в Qt 4.8.

См. также QString::lastIndexOf(), indexOf(), contains(), и count().

int QStringRef::lastIndexOf(const QStringRef &str, int from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает индекс последнего вхождения ссылки на строку str в этой строке, выполняя поиск назад с индекса from. Если from равно -1 (по умолчанию), поиск начинается с последнего символа; если from равно -2, с предпоследнего символа и так далее. Возвращает -1, если str не найдена.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Функция была представлена в Qt 4.8.

См. также QString::lastIndexOf(), indexOf(), contains(), и count().

QStringRef QStringRef::left(int n) const

Возвращает ссылку на подстроку, содержащую n левых символов строки.

Если n больше или равно size(), или меньше нуля, возвращается ссылка на всю строку.

Функция была представлена в Qt 5.2.

См. также right(), mid(), startsWith(), chopped(), chop(), и truncate().

int QStringRef::length() const

Возвращает количество символов, на которые ссылается ссылка на строку. Эквивалентно size() и count().

См. также position() и string().

[static] int QStringRef::localeAwareCompare(const QStringRef &s1, const QString &s2)

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

Сравнение выполняется с учетом локали и платформы. Используйте эту функцию для отображения отсортированных списков строк пользователю.

На macOS и iOS эта функция сравнивает в соответствии с настройкой "Порядок для отсортированных списков" в панели "Международные предпочтения".

Функция была представлена в Qt 4.5.

См. также compare() и QLocale.

int QStringRef::localeAwareCompare(const QString &other) const

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

Сравнивает эту строку с строкой other и возвращает целое число, меньшее, равное или больше нуля, если эта строка меньше, равна или больше строки other соответственно.

Сравнение выполняется с учетом локали и платформы. Используйте эту функцию для отображения отсортированных списков строк пользователю.

Функция была представлена в Qt 4.5.

int QStringRef::localeAwareCompare(const QStringRef &other) const

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

Сравнивает эту строку со строкой other и возвращает целое число, меньшее, равное или больше нуля, если эта строка меньше, равна или больше строки other соответственно.

Сравнение выполняется с учетом локали и платформы. Используйте эту функцию для отображения отсортированных списков строк пользователю.

Функция была представлена в Qt 4.5.

[static] int QStringRef::localeAwareCompare(const QStringRef &s1, const QStringRef &s2)

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

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

Сравнение выполняется с учетом локали и платформы. Используйте эту функцию для отображения отсортированных списков строк пользователю.

Функция была представлена в Qt 4.5.

QStringRef QStringRef::mid(int position, int n = ...) const

Возвращает ссылку на подстроку длиной n символов, начиная с указанной позиции position.

Если position превышает длину строки, возвращается нулевая ссылка.

Если в строке доступно меньше чем n символов, начиная с заданной позиции position, или если n равно -1 (по умолчанию), функция возвращает все символы, начиная с заданной позиции.

Функция была представлена в Qt 5.2.

См. также left(), right(), chopped(), chop(), и truncate().

int QStringRef::position() const

Возвращает начальную позицию в ссылаемой строке, на которую ссылается ссылка на строку.

См. также size() и string().

QStringRef::const_reverse_iterator QStringRef::rbegin() const

Возвращает обратный итератор типа STL, указывающий на первый символ в строке в обратном порядке.

Функция была представлена в Qt 5.7.

См. также begin(), crbegin(), и rend().

QStringRef::const_reverse_iterator QStringRef::rend() const

Возвращает обратный итератор типа STL, указывающий на позицию после последнего символа в строке в обратном порядке.

Функция была представлена в Qt 5.7.

См. также end(), crend(), и rbegin().

QStringRef QStringRef::right(int n) const

Возвращает ссылку на подстроку, содержащую n правых символов строки.

Если n больше или равно size(), или меньше нуля, возвращается ссылка на всю строку.

Функция была представлена в Qt 5.2.

См. также left(), mid(), endsWith(), chopped(), chop(), и truncate().

int QStringRef::size() const

Возвращает количество символов, на которые ссылается ссылка на строку. Эквивалентно length() и count().

См. также position() и string().

QVector<QStringRef> QStringRef::split(const QString &sep, QString::SplitBehavior behavior = QString::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Разделяет строку на подстроки там, где встречается sep, и возвращает список этих строк.

См. QString::split() для того, как sep, behavior и cs взаимодействуют, чтобы сформировать результат.

Примечание: Все ссылки действительны, пока эта строка существует. Уничтожение этой строки приведет к тому, что все ссылки станут висячими указателями.

Функция была представлена в Qt 5.4.

QVector<QStringRef> QStringRef::split(QChar sep, QString::SplitBehavior behavior = QString::KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Функция была представлена в Qt 5.4.

bool QStringRef::startsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

Возвращает true если ссылка на строку начинается со строки str; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае поиск регистронезависимый.

Функция была представлена в Qt 4.8.

См. также QString::startsWith() и endsWith().

bool QStringRef::startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была добавлена в Qt 5.10.

См. также QString::startsWith() и endsWith().

bool QStringRef::startsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была добавлена в Qt 4.8.

См. также QString::startsWith() и endsWith().

bool QStringRef::startsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает true, если строка-ссылка начинается с ch; в противном случае возвращает false.

Если cs равно Qt::CaseSensitive (по умолчанию), поиск регистрозависимый; в противном случае — регистронезависимый.

Эта функция была добавлена в Qt 4.8.

См. также QString::startsWith() и endsWith().

bool QStringRef::startsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Эта функция была добавлена в Qt 4.8.

См. также QString::startsWith() и endsWith().

const QString *QStringRef::string() const

Возвращает указатель на строку, на которую ссылается ссылка на строку, или 0, если она не ссылается на строку.

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

double QStringRef::toDouble(bool *ok = nullptr) const

Возвращает строку, преобразованную в значение double.

Возвращает бесконечность, если преобразование переполнилось, или 0.0, если преобразование завершилось неудачно по другим причинам (например, при потере значимости).

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toDouble().

По историческим причинам, эта функция не обрабатывает разделители тысяч. Если вам нужно преобразовывать такие числа, используйте QLocale::toDouble().

Эта функция была добавлена в Qt 5.1.

См. также QString::toDouble().

float QStringRef::toFloat(bool *ok = nullptr) const

Возвращает строку, преобразованную в значение float.

Возвращает бесконечность, если преобразование переполнилось, или 0.0, если преобразование завершилось неудачно по другим причинам (например, при потере значимости).

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toFloat().

Эта функция была добавлена в Qt 5.1.

См. также QString::toFloat().

int QStringRef::toInt(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в целое число int с основанием base, по умолчанию 10, и значением от 2 до 36 или 0. Возвращает 0, если преобразование завершилось неудачно.

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если с "0", используется основание 8; в противном случае — основание 10.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toInt().

Эта функция была добавлена в Qt 5.1.

См. также QString::toInt().

QByteArray QStringRef::toLatin1() const

Возвращает латинско-1 представление строки в виде QByteArray.

Возвращаемый массив байтов не определен, если строка содержит символы, не относящиеся к латинско-1. Такие символы могут быть подавлены или заменены вопросительным знаком.

Эта функция была добавлена в Qt 4.8.

См. также toUtf8(), toLocal8Bit(), и QTextCodec.

QByteArray QStringRef::toLocal8Bit() const

Возвращает локальное 8-битное представление строки в виде QByteArray. Возвращаемый массив байтов не определен, если строка содержит символы, не поддерживаемые локальной 8-битной кодировкой.

QTextCodec::codecForLocale() используется для преобразования из Юникода. Если кодировка локали не может быть определена, эта функция делает то же, что и toLatin1().

Если эта строка содержит символы, которые не могут быть закодированы в кодировке локали, возвращаемый массив байтов не определен. Такие символы могут быть подавлены или заменены другим.

Эта функция была добавлена в Qt 4.8.

См. также toLatin1(), toUtf8(), и QTextCodec.

long QStringRef::toLong(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в значение long с основанием base, по умолчанию 10, и значением от 2 до 36 или 0. Возвращает 0, если преобразование завершилось неудачно.

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если с "0", используется основание 8; в противном случае — основание 10.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toLong().

Эта функция была добавлена в Qt 5.1.

См. также QString::toLong().

qlonglong QStringRef::toLongLong(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в значение long long с основанием base, по умолчанию 10, и значением от 2 до 36 или 0. Возвращает 0, если преобразование завершилось неудачно.

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если с "0", используется основание 8; в противном случае — основание 10.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toLongLong().

Эта функция была добавлена в Qt 5.1.

См. также QString::toLongLong().

short QStringRef::toShort(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в короткое целое short с основанием base, по умолчанию 10, и значением от 2 до 36 или 0. Возвращает 0, если преобразование завершилось неудачно.

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если с "0", используется основание 8; в противном случае — основание 10.

Преобразование строки всегда происходит в локали 'C'. Для преобразования, зависящего от локали, используйте QLocale::toShort().

Эта функция была добавлена в Qt 5.1.

См. также QString::toShort().

QString QStringRef::toString() const

Возвращает копию ссылки на строку как объект QString.

Если ссылка на строку не является полной ссылкой на строку (то есть position() равно 0, а size() равно string()->size()), эта функция выделит новую строку для возврата.

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

uint QStringRef::toUInt(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в беззнаковое целое unsigned int с основанием base, по умолчанию 10, и значением от 2 до 36 или 0. Возвращает 0, если преобразование завершилось неудачно.

Если ok не равен nullptr, неудача отражается установкой *ok в false, а успех — в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если строка начинается с "0", используется основание 8; в противном случае используется основание 10.

Преобразование строки всегда происходит в локали 'C'. Для локализованного преобразования используйте QLocale::toUInt()

Эта функция была добавлена в Qt 5.1.

См. также QString::toUInt().

ulong QStringRef::toULong(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в unsigned long, используя основание base, которое по умолчанию равно 10 и должно быть в диапазоне от 2 до 36 или 0. Возвращает 0, если преобразование не удалось.

Если ok не nullptr, ошибка сообщается, устанавливая *ok в false, а успех — устанавливая *ok в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если строка начинается с "0", используется основание 8; в противном случае используется основание 10.

Преобразование строки всегда происходит в локали 'C'. Для локализованного преобразования используйте QLocale::toULongLong()

Эта функция была добавлена в Qt 5.1.

См. также QString::toULong().

qulonglong QStringRef::toULongLong(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в unsigned long long используя основание base, которое по умолчанию равно 10 и должно быть в диапазоне от 2 до 36 или 0. Возвращает 0, если преобразование не удалось.

Если ok не nullptr, ошибка сообщается, устанавливая *ok в false, а успех — устанавливая *ok в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если строка начинается с "0", используется основание 8; в противном случае используется основание 10.

Преобразование строки всегда происходит в локали 'C'. Для локализованного преобразования используйте QLocale::toULongLong()

Эта функция была добавлена в Qt 5.1.

См. также QString::toULongLong().

ushort QStringRef::toUShort(bool *ok = nullptr, int base = 10) const

Возвращает строку, преобразованную в unsigned short, используя основание base, которое по умолчанию равно 10 и должно быть в диапазоне от 2 до 36 или 0. Возвращает 0, если преобразование не удалось.

Если ok не nullptr, ошибка сообщается, устанавливая *ok в false, а успех — устанавливая *ok в true.

Если base равно 0, используется соглашение языка C: если строка начинается с "0x", используется основание 16; если строка начинается с "0", используется основание 8; в противном случае используется основание 10.

Преобразование строки всегда происходит в локали 'C'. Для локализованного преобразования используйте QLocale::toUShort()

Эта функция была добавлена в Qt 5.1.

См. также QString::toUShort().

QVector<uint> QStringRef::toUcs4() const

Возвращает представление строки в UCS-4/UTF-32 в виде QVector<uint>.

UCS-4 — это кодек Юникода, поэтому он без потерь. Все символы из этой строки будут закодированы в UCS-4. Любая недопустимая последовательность кодовых единиц в этой строке заменяется замещающим символом Юникода (QChar::ReplacementCharacter, который соответствует U+FFFD).

Возвращаемый вектор не завершается символом '\0'.

Эта функция была добавлена в Qt 4.8.

См. также toUtf8(), toLatin1(), toLocal8Bit(), и QTextCodec.

QByteArray QStringRef::toUtf8() const

Возвращает UTF-8 представление строки в виде QByteArray.

UTF-8 — это кодек Юникода и может представлять все символы в строке Юникода, как в QString.

Эта функция была добавлена в Qt 4.8.

См. также toLatin1(), toLocal8Bit(), и QTextCodec.

QStringRef QStringRef::trimmed() const

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

Пробелы — это любые символы, для которых QChar::isSpace() возвращает true. Это включает символы ASCII '\t', '\n', '\v', '\f', '\r' и ' '.

В отличие от QString::simplified(), trimmed() оставляет внутренние пробелы без изменений.

Эта функция была добавлена в Qt 5.1.

См. также QString::trimmed().

void QStringRef::truncate(int position)

Усекает строку по указанному индексу position.

Если указанный индекс position выходит за пределы строки, ничего не происходит.

Если position отрицателен, он эквивалентен нулю.

Эта функция была добавлена в Qt 5.6.

См. также QString::truncate().

const QChar *QStringRef::unicode() const

Возвращает представление строки в Юникоде. Поскольку данные берутся непосредственно из ссылаемой строки, она не завершается '\0', если только ссылка не включает завершающий нуль строки.

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

bool QStringRef::operator!=(const char *s) const

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

Указатель s const char преобразуется в QStringRef с помощью функции fromUtf8().

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

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

См. также QT_NO_CAST_FROM_ASCII.

bool QStringRef::operator<(const char *s) const

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

Указатель s const char преобразуется в QStringRef с помощью функции fromUtf8().

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

Возвращает true если эта строка лексически меньше строки-параметра s. В противном случае возвращает false.

См. также QT_NO_CAST_FROM_ASCII.

bool QStringRef::operator<=(const char *s) const

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

Указатель s const char преобразуется в QStringRef с помощью функции fromUtf8().

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

Возвращает true если эта строка лексически меньше или равна строке-параметру s. В противном случае возвращает false.

См. также QT_NO_CAST_FROM_ASCII.

QStringRef &QStringRef::operator=(const QString *string)

Создаёт ссылку на строку string и присваивает её этой строковой ссылке, возвращая результат.

bool QStringRef::operator==(const char *s) const

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

Массив байтов s преобразуется в QStringRef с помощью функции fromUtf8(). Функция останавливает преобразование при первом найденном символе NUL или в конце массива байтов.

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

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

См. также QT_NO_CAST_FROM_ASCII.

bool QStringRef::operator>(const char *s) const

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

Указатель s const char преобразуется в QStringRef с помощью функции fromUtf8().

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

Возвращает true если эта строка лексически больше строки-параметра s. В противном случае возвращает false.

См. также QT_NO_CAST_FROM_ASCII.

bool QStringRef::operator>=(const char *s) const

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

Указатель s const char преобразуется в QStringRef с помощью функции fromUtf8().

END_OF_DOCUMENT_MARKER

Вы можете отключить этот оператор, определив QT_NO_CAST_FROM_ASCII при компиляции ваших приложений. Это может быть полезно, если вы хотите убедиться, что все отображаемые пользователю строки проходят через QObject::tr(), например.

Возвращает true если эта строка лексически больше или равна параметру строки s. В противном случае возвращает false.

См. также QT_NO_CAST_FROM_ASCII.

QChar QStringRef::operator[](int position) const

Возвращает символ по заданному индексу position в строковой ссылке.

position должен быть допустимым индексом в строковой ссылке (т.е., 0 <= position < size()).

Эта функция была добавлена в Qt 5.7.

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

Связанные нечленные функции

bool QStringRef::operator<(const QStringRef &s1, const QStringRef &s2)

Возвращает true если строковая ссылка s1 лексически меньше строковой ссылки s2; в противном случае возвращает false.

Сравнение основано исключительно на числовых значениях Юникода символов и очень быстрое, но не такое, как ожидалось от человека. Для сортировки строк пользовательского интерфейса используйте функцию QString::localeAwareCompare().

bool QStringRef::operator<=(const QStringRef &s1, const QStringRef &s2)

Возвращает true если строковая ссылка s1 лексически меньше или равна строковой ссылке s2; в противном случае возвращает false.

Сравнение основано исключительно на числовых значениях Юникода символов и очень быстрое, но не такое, как ожидалось от человека. Для сортировки строк пользовательского интерфейса используйте функцию QString::localeAwareCompare().

bool QStringRef::operator==(const QStringRef &s1, const QStringRef &s2)

Возвращает true если строковая ссылка s1 лексически равна строковой ссылке s2; в противном случае возвращает false.

bool QStringRef::operator==(const QString &s1, const QStringRef &s2)

Возвращает true если строка s1 лексически равна строковой ссылке s2; в противном случае возвращает false.

bool QStringRef::operator==(QLatin1String s1, const QStringRef &s2)

Возвращает true если строка s1 лексически равна строковой ссылке s2; в противном случае возвращает false.

bool QStringRef::operator>(const QStringRef &s1, const QStringRef &s2)

Возвращает true если строковая ссылка s1 лексически больше строковой ссылки s2; в противном случае возвращает false.

Сравнение основано исключительно на числовых значениях Юникода символов и очень быстрое, но не такое, как ожидалось от человека. Для сортировки строк пользовательского интерфейса используйте функцию QString::localeAwareCompare().

bool QStringRef::operator>=(const QStringRef &s1, const QStringRef &s2)

Возвращает true если строковая ссылка s1 лексически больше или равна строковой ссылке s2; в противном случае возвращает false.

Сравнение основано исключительно на числовых значениях Юникода символов и очень быстрое, но не такое, как ожидалось от человека. Для сортировки строк пользовательского интерфейса используйте функцию QString::localeAwareCompare().

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

Spec-Zone.ru

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