Spec-Zone.ru › Qt 5.14

Класс QStringView

Класс QStringView предоставляет унифицированный вид на UTF-16 строки с подмножеством функций класса QString с чтением только для чтения. Подробнее...

Заголовок: #include <QStringView>
qmake: QT += core
С момента: Qt 5.10

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

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

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

Типы публичного доступа

typedef const_iterator
typedef const_pointer
typedef const_reference
typedef const_reverse_iterator
typedef difference_type
typedef iterator
typedef pointer
typedef reference
typedef reverse_iterator
typedef size_type
typedef storage_type
typedef value_type

Публичные функции

QStringView(const StdBasicString &str)
QStringView(const QStringRef &str)
QStringView(const QString &str)
QStringView(const Char *str)
QStringView(const Char (&)[N] string = ...)
QStringView(const Char *first, const Char *last)
QStringView(const Char *str, qsizetype len)
QStringView(std::nullptr_t)
QStringView()
QChar at(qsizetype n) const
QChar back() const
QStringView::const_iterator begin() const
QStringView::const_iterator cbegin() const
QStringView::const_iterator cend() const
void chop(qsizetype length)
QStringView chopped(qsizetype length) const
int compare(QStringView other, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool contains(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QStringView::const_reverse_iterator crbegin() const
QStringView::const_reverse_iterator crend() const
QStringView::const_pointer data() const
bool empty() const
QStringView::const_iterator end() const
bool endsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool endsWith(QChar ch) const
bool endsWith(QChar ch, Qt::CaseSensitivity cs) const
QChar first() const
QChar front() const
qsizetype indexOf(QChar c, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const
qsizetype indexOf(QStringView str, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const
qsizetype indexOf(QLatin1String l1, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const
bool isEmpty() const
bool isNull() const
bool isRightToLeft() const
QChar last() const
qsizetype lastIndexOf(QChar c, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype lastIndexOf(QStringView str, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
qsizetype lastIndexOf(QLatin1String l1, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
QStringView left(qsizetype length) const
int length() const
QStringView mid(qsizetype start) const
QStringView mid(qsizetype start, qsizetype length) const
QStringView::const_reverse_iterator rbegin() const
QStringView::const_reverse_iterator rend() const
QStringView right(qsizetype length) const
qsizetype size() const
bool startsWith(QStringView str, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
bool startsWith(QChar ch) const
bool startsWith(QChar ch, Qt::CaseSensitivity cs) const
QByteArray toLatin1() const
QByteArray toLocal8Bit() const
QString toString() const
QVector<uint> toUcs4() const
QByteArray toUtf8() const
int toWCharArray(wchar_t *array) const
QStringView обрезанный() const
void усечь(qsizetype length)
const QStringView::storage_type * utf16() const
QChar operator[](qsizetype n) const

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

uint qHash(QStringView key, uint seed = ...)

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

QStringView ссылается на непрерывный участок строки UTF-16, которой она не владеет. Она действует как интерфейсный тип для всех типов строк UTF-16, без необходимости предварительного создания QString.

Строка UTF-16 может быть представлена в виде массива (или совместимой с массивом структуры данных, такой как QString, std::basic_string и т.д.) объектов QChar, ushort, char16_t или (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

QStringView разработана как интерфейсный тип; её основное использование — в качестве типа параметра функции. При использовании QStringViews в качестве автоматических переменных или данных-членов необходимо следить за тем, чтобы данные строки, на которые ссылается QStringView (например, принадлежащие QString), существовали дольше, чем QStringView, на всех путях кода, чтобы избежать ситуации, когда строковый вид ссылается на удалённые данные.

При использовании в качестве интерфейсного типа QStringView позволяет одной функции принимать множество источников данных строк UTF-16. Одна функция, принимающая QStringView, таким образом, заменяет три перегрузки функций (принимающие QString, QStringRef и (const QChar*, int)), одновременно позволяя передавать функции ещё больше источников данных строк, такие как u"Hello World", строковая константа char16_t.

QStringViews следует передавать по значению, а не по ссылке-константе:

    void myfun1(QStringView sv);        // preferred
    void myfun2(const QStringView &sv); // compiles and works, but slower

Если вы хотите предоставить своим пользователям максимальную свободу в выборе строк, которые они могут передавать вашей функции, добавьте перегрузки для

  • QChar: эта перегрузка может делегировать вызов версии QStringView:
        void fun(QChar ch) { fun(QStringView(&ch, 1)); }

    хотя по техническим причинам QStringView не может предоставить конструктор QChar самостоятельно.

  • QString: если вы сохраняете немодифицированную копию строки и хотите воспользоваться неявным совместным использованием QString.
  • QLatin1String: если вы можете реализовать функцию без предварительного преобразования QLatin1String в UTF-16; пользователи ожидают, что функция, перегруженная по QLatin1String, будет выполнять меньше операций выделения памяти, чем семантически эквивалентный вызов версии QStringView, включающий создание QString из QLatin1String.

QStringView также может использоваться в качестве значения, возвращаемого функцией. Если вы вызываете функцию, возвращающую QStringView, будьте внимательны, чтобы не сохранять QStringView дольше, чем функция гарантирует, что ссылаемые данные строки остаются живыми. В случае сомнений получите сильную ссылку на данные, вызвав toString() для преобразования QStringView в QString.

QStringView — это литеральный тип, но поскольку он хранит данные как char16_t, итерация не constexpr (преобразования из const char16_t* в const QChar*, что запрещено в constexpr функциях). Вместо этого можно использовать цикл с индексами и/или utf16() в constexpr контекстах.

Примечание: Мы настоятельно не рекомендуем использовать QList<QStringView>, так как QList — очень неэффективный контейнер для QStringViews (он будет выделять память для каждого элемента в куче). Используйте QVector (или std::vector) для хранения QStringViews.

См. также QString и QStringRef.

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

typedef QStringView::const_iterator

Этот typedef предоставляет итератор по типу STL для QStringView.

См. также итератор и const_обратный_итератор.

typedef QStringView::const_pointer

Псевдоним для value_type *. Предоставлен для совместимости со STL.

typedef QStringView::const_reference

Псевдоним для value_type &. Предоставлен для совместимости со STL.

typedef QStringView::const_reverse_iterator

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

См. также обратный итератор и итератор.

typedef QStringView::difference_type

Псевдоним для std::ptrdiff_t. Предоставлен для совместимости со STL.

typedef QStringView::iterator

Этот typedef предоставляет итератор по типу STL для QStringView.

QStringView не поддерживает изменяемые итераторы, поэтому он такой же, как const_итератор.

См. также const_итератор и обратный итератор.

typedef QStringView::pointer

Псевдоним для value_type *. Предоставлен для совместимости со STL.

QStringView не поддерживает изменяемые указатели, поэтому он такой же, как const_указатель.

typedef QStringView::reference

Псевдоним для value_type &. Предоставлен для совместимости со STL.

QStringView не поддерживает изменяемые ссылки, поэтому он такой же, как const_ссылка.

typedef QStringView::reverse_iterator

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

QStringView не поддерживает изменяемые обратные итераторы, поэтому он такой же, как const_обратный итератор.

См. также const_обратный итератор и итератор.

typedef QStringView::size_type

Псевдоним для qsizetype. Предоставлен для совместимости со STL.

В отличие от других классов Qt, QStringView использует qsizetype в качестве своего size_type, чтобы позволить принимать данные из std::basic_string без усечения. Функции API Qt, например length(), возвращают int, в то время как совместимые со STL функции, например size(), возвращают size_type.

typedef QStringView::storage_type

Псевдоним для char16_t.

typedef QStringView::value_type

Псевдоним для const QChar. Предоставлен для совместимости со STL.

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

qsizetype QStringView::lastIndexOf(QChar c, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

qsizetype QStringView::lastIndexOf(QLatin1String l1, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

qsizetype QStringView::lastIndexOf(QStringView str, qsizetype from = -1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

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

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

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

bool QStringView::contains(QChar c, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

bool QStringView::contains(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

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

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

Данная документация была добавлена в Qt 5.14.

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

qsizetype QStringView::indexOf(QChar c, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const

qsizetype QStringView::indexOf(QLatin1String l1, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const

qsizetype QStringView::indexOf(QStringView str, qsizetype from = ..., Qt::CaseSensitivity cs = ...) const

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

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

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

Данная документация была добавлена в Qt 5.14.

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

bool QStringView::endsWith(QChar ch) const

bool QStringView::endsWith(QChar ch, Qt::CaseSensitivity cs) const

bool QStringView::endsWith(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает true если эта строка-представление заканчивается строкой-представлением str, строкой Latin-1 l1 или символом ch, соответственно; в противном случае возвращает false.

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

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

bool QStringView::startsWith(QChar ch) const

bool QStringView::startsWith(QChar ch, Qt::CaseSensitivity cs) const

bool QStringView::startsWith(QLatin1String l1, Qt::CaseSensitivity cs = Qt::CaseSensitive) const

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

Возвращает true если эта строка-представление начинается со строки-представления str, строки Latin-1 l1 или символа ch, соответственно; в противном случае возвращает false.

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

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

QStringView::QStringView(const StdBasicString &str)

Создаёт представление строки str. Длина берётся из str.size().

str.data() должно оставаться валидным на протяжении всего времени жизни объекта представления строки.

Этот конструктор участвует в резолюции перегрузки только если StdBasicString является экземпляром std::basic_string с совместимым типом символа. Совместимые типы символов: QChar, ushort, char16_t и (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

Представление строки будет пустым тогда и только тогда, когда str.empty(). Не определено, может ли этот конструктор привести к созданию пустого представления строки (str.data() должно было бы возвращать nullptr для этого).

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

QStringView::QStringView(const QStringRef &str)

Создаёт представление строки str.

str.data() должно оставаться валидным на протяжении всего времени жизни объекта представления строки.

Представление строки будет null тогда и только тогда, когда str.isNull().

QStringView::QStringView(const QString &str)

Создаёт представление строки str.

str.data() должно оставаться валидным на протяжении всего времени жизни объекта представления строки.

Представление строки будет null тогда и только тогда, когда str.isNull().

QStringView::QStringView(const Char *str)

Создаёт представление строки str. Длина определяется путем поиска первого Char(0).

str должно оставаться валидным на протяжении всего времени жизни объекта представления строки.

Передача nullptr в качестве str безопасна и приводит к null-представлению строки.

Этот конструктор участвует в резолюции перегрузки только если str не является массивом и если Char является совместимым типом символа. Совместимые типы символов: QChar, ushort, char16_t и (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

QStringView::QStringView(const Char (&)[N] string = ...)

Создаёт представление строки-литерала string. Длина устанавливается в N-1, исключая завершающий {Char(0)}. Если вам нужен весь массив, используйте конструктор из указателя и размера:

    auto sv = QStringView(array, std::size(array)); // using C++17 std::size()

string должно оставаться валидным на протяжении всего времени жизни объекта представления строки.

Этот конструктор участвует в резолюции перегрузки только если string является фактическим массивом и Char является совместимым типом символа. Совместимые типы символов: QChar, ushort, char16_t и (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

QStringView::QStringView(const Char *first, const Char *last)

Создаёт представление строки first с длиной (last - first).

Диапазон [first,last) должен оставаться валидным на протяжении всего времени жизни объекта представления строки.

Передача \nullptr в качестве first безопасна, если last тоже nullptr, и приводит к null-представлению строки.

Поведение неопределено, если last предшествует first, или first является nullptr и last не является.

Этот конструктор участвует в резолюции перегрузки только если Char является совместимым типом символа. Совместимые типы символов: QChar, ushort, char16_t и (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

QStringView::QStringView(const Char *str, qsizetype len)

Создаёт представление строки str с длиной len.

Диапазон [str,len) должен оставаться валидным на протяжении всего времени жизни объекта представления строки.

Передача nullptr в качестве str безопасна, если len равно 0, и приводит к null-представлению строки.

Поведение неопределено, если len отрицательное или, если положительное, если str является nullptr.

Этот конструктор участвует в резолюции перегрузки только если Char является совместимым типом символа. Совместимые типы символов: QChar, ushort, char16_t и (на платформах, таких как Windows, где это 16-битный тип) wchar_t.

QStringView::QStringView(std::nullptr_t)

Создаёт null-представление строки.

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

QStringView::QStringView()

Создаёт null-представление строки.

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

QChar QStringView::at(qsizetype n) const

Возвращает символ в позиции n в этом представлении строки.

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

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

QChar QStringView::back() const

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

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

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

См. также front(), first() и last().

QStringView::const_iterator QStringView::begin() const

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

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

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

QStringView::const_iterator QStringView::cbegin() const

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

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

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

QStringView::const_iterator QStringView::cend() const

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

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

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

void QStringView::chop(qsizetype length)

Усекает эту строку-представление на length символов.

То же, что и *this = left(size() - length).

Примечание: Поведение неопределено, когда length < 0 или length > size().

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

QStringView QStringView::chopped(qsizetype length) const

Возвращает подстроку длины size() - length, начиная с начала этого объекта.

То же, что и left(size() - length).

Примечание: Поведение неопределено, когда length < 0 или length > size().

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

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

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

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

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

См. также operator==(), operator<() и operator>().

QStringView::const_reverse_iterator QStringView::crbegin() const

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

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

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

QStringView::const_reverse_iterator QStringView::crend() const

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

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

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

QStringView::const_pointer QStringView::data() const

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

Примечание: Массив символов, представленный возвращаемым значением, не является завершающим нулём.

См. также begin(), end() и utf16().

bool QStringView::empty() const

Возвращает, является ли эта строка-представление пустой — то есть, является ли size() == 0.

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

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

QStringView::const_iterator QStringView::end() const

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

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

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

QChar QStringView::first() const

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

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

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

См. также front(), back() и last().

QChar QStringView::front() const

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

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

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

См. также back(), first() и last().

bool QStringView::isEmpty() const

Возвращает, является ли эта строка-представление пустой — то есть, является ли size() == 0.

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

См. также empty(), isNull(), size() и length().

bool QStringView::isNull() const

Возвращает, является ли эта строка-представление пустой — то есть, является ли data() == nullptr.

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

См. также empty(), isEmpty(), size() и length().

bool QStringView::isRightToLeft() const

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

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

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

QChar QStringView::last() const

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

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

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

См. также back(), front() и first().

QStringView QStringView::left(qsizetype length) const

Возвращает подстроку длины length, начинающуюся с позиции 0 в этом объекте.

Примечание: Поведение неопределено, когда length < 0 или length > size().

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

int QStringView::length() const

То же, что и size(), за исключением того, что возвращает результат как int.

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

Предупреждение: QStringView может представлять строки с более чем 231 символами. Вызов этой функции для строки-представления, для которой size() возвращает значение больше, чем INT_MAX приводит к неопределённому поведению.

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

QStringView QStringView::mid(qsizetype start) const

Возвращает подстроку, начинающуюся с позиции start в этом объекте и продолжающуюся до конца строки.

Примечание: Поведение неопределено, когда start < 0 или start > size().

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

QStringView QStringView::mid(qsizetype start, qsizetype length) const

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

Возвращает подстроку длиной length, начинающуюся с позиции start в этом объекте.

Примечание: Поведение не определено, когда start < 0, length < 0 или start + length > size().

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

QStringView::const_reverse_iterator QStringView::rbegin() const

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

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

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

QStringView::const_reverse_iterator QStringView::rend() const

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

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

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

QStringView QStringView::right(qsizetype length) const

Возвращает подстроку длиной length, начинающуюся с позиции size() - length в этом объекте.

Примечание: Поведение не определено, когда length < 0 или length > size().

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

qsizetype QStringView::size() const

Возвращает размер этой строковой области, в точках кода UTF-16 (то есть, пары суррогатов учитываются как две для целей этой функции, как и в QString и QStringRef).

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

QByteArray QStringView::toLatin1() const

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

Поведение не определено, если строка содержит символы, отличные от Latin-1.

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

QByteArray QStringView::toLocal8Bit() const

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

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

Поведение не определено, если строка содержит символы, не поддерживаемые 8-битной кодировкой локали.

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

QString QStringView::toString() const

Возвращает глубокую копию данных этой строковой области как QString.

Возвращаемое значение будет пустой QString тогда и только тогда, когда эта строковая область равна null.

Предупреждение: QStringView может хранить строки с более чем 230 символами, в то время как QString не может. Вызов этой функции для строковой области, для которой size() возвращает значение, большее чем INT_MAX / 2, является неопределённым поведением.

QVector<uint> QStringView::toUcs4() const

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

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

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

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

QByteArray QStringView::toUtf8() const

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

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

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

int QStringView::toWCharArray(wchar_t *array) const

Преобразует эту строку в заданный массив array.

Вызывающая сторона отвечает за обеспечение того, что array достаточно велик для хранения кодирования wchar_t этой строки (выделение массива с той же длиной, что и строка, всегда является достаточным). Массив кодируется в UTF-16 на платформах, где wchar_t имеет ширину 2 байта (например, Windows); в противном случае (системы Unix) предполагается, что wchar_t имеет ширину 4 байта, и данные записываются в UCS-4.

Примечание: Эта функция не записывает нулевой терминатор в конец array.

Возвращает количество wchar_t записей, записанных в array.

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

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

QStringView QStringView::trimmed() const

Удаляет начальные и конечные пробелы и возвращает результат.

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

void QStringView::truncate(qsizetype length)

Усекает эту строковую область до длины length.

То же самое, что и *this = left(length).

Примечание: Поведение не определено, когда length < 0 или length > size().

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

const QStringView::storage_type *QStringView::utf16() const

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

storage_type — это char16_t.

Примечание: Массив символов, представленный возвращаемым значением, не имеет нулевого завершения.

См. также begin(), end() и data().

QChar QStringView::operator[](qsizetype n) const

Возвращает символ в позиции n в этой строковой области.

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

См. также at(), front() и back().

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

uint qHash(QStringView key, uint seed = ...)

Возвращает хэш-значение для key, используя seed для инициализации вычисления.

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

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

Spec-Zone.ru

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