Spec-Zone.ru › Qt 5.6

Класс QStringRef

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

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

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

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

QStringRef()
QStringRef(const QString *string, int position, int length)
QStringRef(const QString *string)
QStringRef(const QStringRef &other)
QStringRef(QStringRef &&other)
~QStringRef()
QStringRef appendTo(QString *string) const
const QChar at(int position) const
const QChar * begin() const
const QChar * cbegin() const
const QChar * cend() const
void clear()
int compare(const QStringRef &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int compare(QLatin1String other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
int compare(const QString &other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
const QChar * constData() const
bool contains(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) 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
const QChar * data() const
const QChar * end() const
bool endsWith(const QString &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
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
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 QStringRef &other) const
int localeAwareCompare(const QString &other) const
QStringRef mid(int position, int n = -1) const
int position() const
QStringRef right(int n) const
int size() 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 startsWith(const QString &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(QLatin1String str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(const QStringRef &str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
const QString * строка() const
double toDouble(bool *ok = Q_NULLPTR) const
float toFloat(bool *ok = Q_NULLPTR) const
int toInt(bool *ok = Q_NULLPTR, int base = 10) const
QByteArray toLatin1() const
QByteArray toLocal8Bit() const
long toLong(bool *ok = Q_NULLPTR, int base = 10) const
qlonglong toLongLong(bool *ok = Q_NULLPTR, int base = 10) const
short toShort(bool *ok = Q_NULLPTR, int base = 10) const
QString toString() const
uint toUInt(bool *ok = Q_NULLPTR, int base = 10) const
ulong toULong(bool *ok = Q_NULLPTR, int base = 10) const
qulonglong toULongLong(bool *ok = Q_NULLPTR, int base = 10) const
ushort toUShort(bool *ok = Q_NULLPTR, int base = 10) const
QVector<uint> toUcs4() const
QByteArray toUtf8() const
QStringRef обрезанная() const
void усечь(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=(QStringRef &&other)
QStringRef & operator=(const QStringRef &other)
QStringRef & operator=(const QString *string)
bool operator==(const char *s) const
bool operator>(const char *s) const
bool operator>=(const char *s) const

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

int compare(const QStringRef &s1, const QString &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
int compare(const QStringRef &s1, const QStringRef &s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
int compare(const QStringRef &s1, QLatin1String s2, Qt::CaseSensitivity cs = Qt::CaseSensitive)
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 предоставляет тонкий обертка вокруг QString подстрок.

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

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

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

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

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

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

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

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

QStringRef::QStringRef()

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

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(const QString *string)

Создаёт ссылку на строку string.

QStringRef::QStringRef(const QStringRef &other)

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

QStringRef::QStringRef(QStringRef &&other)

Конструктор перемещения.

QStringRef::~QStringRef()

Уничтожает ссылку на строку.

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

QStringRef QStringRef::appendTo(QString *string) const

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

const QChar QStringRef::at(int position) const

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

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

const QChar *QStringRef::begin() const

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

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

const QChar *QStringRef::cbegin() const

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

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

const QChar *QStringRef::cend() const

Возвращает указатель на символ, следующий за последним символом в этой строке. (Это то же самое, что unicode() + size())

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

void QStringRef::clear()

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

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

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

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

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

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

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

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

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

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

Если cs равно Qt::CaseSensitive, сравнение чувствительно к регистру; в противном случае сравнение нечувствительно к регистру.

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

const QChar *QStringRef::constData() const

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

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

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

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

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

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

bool QStringRef::contains(QChar ch, Qt::CaseSensitivity cs = Qt::CaseSensitive) 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 = Qt::CaseSensitive) 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().

const QChar *QStringRef::data() const

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

const QChar *QStringRef::end() const

Возвращает указатель на символ, следующий за последним символом в этой строке. (Это то же самое, что unicode() + size().)

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

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(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().

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, если string() возвращает нулевой указатель или указатель на пустую строку; в противном случае возвращает true.

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

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().

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 QStringRef &other) const

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

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

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

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

int QStringRef::localeAwareCompare(const QString &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 = -1) const

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

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

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

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

См. также left() и right().

int QStringRef::position() const

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

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

QStringRef QStringRef::right(int n) const

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

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

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

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

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 и возвращает список этих строк. Если sep не найдена нигде в строке, split() возвращает вектор с одной строкой — этой строковой ссылкой.

cs указывает, нужно ли выполнять поиск sep с учётом регистра или без него.

Если behavior имеет значение QString::SkipEmptyParts, пустые записи не отображаются в результате. По умолчанию пустые записи сохраняются.

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

Эта функция была добавлена в 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(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 = Q_NULLPTR) const

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

Возвращает 0.0, если преобразование не выполняется.

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в true.

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

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

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

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

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

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в true. Возвращает 0.0, если преобразование не выполняется.

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

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

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

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

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в 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 = Q_NULLPTR, int base = 10) const

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в true.

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

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

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

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

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

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в true.

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

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

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

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

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

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в 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 = Q_NULLPTR, int base = 10) const

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

Если возникает ошибка преобразования, *ok устанавливается в false; в противном случае *ok устанавливается в true.

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

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

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

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

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

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

Если возникает ошибка преобразования, *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 = Q_NULLPTR, int base = 10) const

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

Если произошла ошибка преобразования, *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 = Q_NULLPTR, int base = 10) const

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

Если произошла ошибка преобразования, *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 — это кодек Unicode, поэтому он без потерь. Все символы из этой строки будут закодированы в UCS-4. Любая недопустимая последовательность кодовых единиц в этой строке заменяется замещающим символом Unicode (QChar::ReplacementCharacter, который соответствует U+FFFD).

Возвращаемый вектор не завершается нулём.

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

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

QByteArray QStringRef::toUtf8() const

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

UTF-8 — это кодек Unicode и может представлять все символы в строке Unicode, например 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Оператор присваивания перемещения.

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

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

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.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Spec-Zone.ru

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