QByteArrayView Class
La clase QByteArrayView proporciona una vista de una matriz de bytes con un subconjunto de sólo lectura de la API QByteArray. Más...
| Cabecera: | #include <QByteArrayView> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core)target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| Desde: | Qt 6.0 |
- Lista de todos los miembros, incluyendo los heredados
- Miembros obsoletos
- QByteArrayView es parte de Implicitly Shared Classes y de Classes for string data.
Esta clase es fuertemente comparable.
Esta clase es fuertemente comparable con QString, QStringView, QUtf8StringView, QLatin1StringView, QChar, y char16_t.
Cuando se compara con tipos de caracteres string y Unicode, el contenido se interpreta como UTF-8.
Nota: Todas las funciones de esta clase son reentrantes.
Tipos públicos
| const_iterator | |
| const_pointer | |
| const_reference | |
| const_reverse_iterator | |
| difference_type | |
| iterator | |
| pointer | |
| reference | |
| reverse_iterator | |
| size_type | |
| storage_type | |
| value_type |
Funciones Públicas
| QByteArrayView() | |
(since 6.9) | QByteArrayView(const Byte (&)[] data) |
| QByteArrayView(const Byte *data) | |
| QByteArrayView(const Container &c) | |
| QByteArrayView(const QByteArray &byteArray) | |
| QByteArrayView(const char (&)[Size] data) | |
| QByteArrayView(std::nullptr_t) | |
| QByteArrayView(const Byte *first, const Byte *last) | |
| QByteArrayView(const Byte *data, qsizetype len) | |
| char | at(qsizetype n) const |
| char | back() const |
| QByteArrayView::const_iterator | begin() const |
| QByteArrayView::const_iterator | cbegin() const |
| QByteArrayView::const_iterator | cend() const |
| void | chop(qsizetype length) |
| QByteArrayView | chopped(qsizetype length) const |
(since 6.2) int | compare(QByteArrayView bv, Qt::CaseSensitivity cs = Qt::CaseSensitive) const |
| QByteArrayView::const_pointer | constData() const |
| bool | contains(QByteArrayView bv) const |
| bool | contains(char ch) const |
| qsizetype | count(QByteArrayView bv) const |
| qsizetype | count(char ch) const |
| QByteArrayView::const_reverse_iterator | crbegin() const |
| QByteArrayView::const_reverse_iterator | crend() const |
| QByteArrayView::const_pointer | data() const |
| bool | empty() const |
| QByteArrayView::const_iterator | end() const |
| bool | endsWith(QByteArrayView bv) const |
| bool | endsWith(char ch) const |
| QByteArrayView | first(qsizetype n) const |
| char | front() const |
| qsizetype | indexOf(QByteArrayView bv, qsizetype from = 0) const |
| qsizetype | indexOf(char ch, qsizetype from = 0) const |
| bool | isEmpty() const |
| bool | isNull() const |
(since 6.3) bool | isValidUtf8() const |
| QByteArrayView | last(qsizetype n) const |
| qsizetype | lastIndexOf(QByteArrayView bv, qsizetype from) const |
| qsizetype | lastIndexOf(char ch, qsizetype from = -1) const |
(since 6.2) qsizetype | lastIndexOf(QByteArrayView bv) const |
| qsizetype | length() const |
(since 6.8) qsizetype | max_size() const |
| QByteArrayView::const_reverse_iterator | rbegin() const |
| QByteArrayView::const_reverse_iterator | rend() const |
| qsizetype | size() const |
(since 6.8) QByteArrayView & | slice(qsizetype pos, qsizetype n) |
(since 6.8) QByteArrayView & | slice(qsizetype pos) |
| QByteArrayView | sliced(qsizetype pos) const |
| QByteArrayView | sliced(qsizetype pos, qsizetype n) const |
| bool | startsWith(QByteArrayView bv) const |
| bool | startsWith(char ch) const |
| QByteArray | toByteArray() const |
(since 6.3) double | toDouble(bool *ok = nullptr) const |
(since 6.3) float | toFloat(bool *ok = nullptr) const |
(since 6.3) int | toInt(bool *ok = nullptr, int base = 10) const |
(since 6.3) long | toLong(bool *ok = nullptr, int base = 10) const |
(since 6.3) qlonglong | toLongLong(bool *ok = nullptr, int base = 10) const |
(since 6.3) short | toShort(bool *ok = nullptr, int base = 10) const |
(since 6.3) uint | toUInt(bool *ok = nullptr, int base = 10) const |
(since 6.3) ulong | toULong(bool *ok = nullptr, int base = 10) const |
(since 6.3) qulonglong | toULongLong(bool *ok = nullptr, int base = 10) const |
(since 6.3) ushort | toUShort(bool *ok = nullptr, int base = 10) const |
(since 6.3) QByteArrayView | trimmed() const |
| void | truncate(qsizetype length) |
(since 6.7) | operator std::string_view() const |
| char | operator[](qsizetype n) const |
Miembros públicos estáticos
No miembros relacionados
| bool | operator!=(const QByteArrayView &lhs, const QByteArrayView &rhs) |
| bool | operator<(const QByteArrayView &lhs, const QByteArrayView &rhs) |
| bool | operator<=(const QByteArrayView &lhs, const QByteArrayView &rhs) |
| bool | operator==(const QByteArrayView &lhs, const QByteArrayView &rhs) |
| bool | operator>(const QByteArrayView &lhs, const QByteArrayView &rhs) |
| bool | operator>=(const QByteArrayView &lhs, const QByteArrayView &rhs) |
Descripción Detallada
Un QByteArrayView hace referencia a una porción contigua de bytes brutos que no posee. Actúa como un tipo de interfaz para todo tipo de datos tipo matriz de bytes, sin necesidad de construir primero un QByteArray.
Los datos de la matriz de bytes pueden representarse como una matriz (o una estructura de datos compatible con matrices como QByteArray, std::basic_string, etc.) de char, signed char, unsigned char o std::byte.
QByteArrayView está diseñado como un tipo de interfaz; su principal caso de uso es como tipo de parámetro de función. Cuando se usan QByteArrayViews como variables automáticas o miembros de datos, hay que tener cuidado para asegurarse de que los datos referenciados (por ejemplo, propiedad de un QByteArray) sobreviven al QByteArrayView en todas las rutas de código, no sea que la vista de matriz de bytes acabe referenciando datos borrados.
Cuando se utiliza como un tipo de interfaz, QByteArrayView permite que una única función acepte una amplia variedad de fuentes de datos similares a matrices de bytes. Una función que acepte QByteArrayView sustituye así a varias sobrecargas de funciones (tomando, por ejemplo, QByteArray, const char *, etc.) al tiempo que permite pasar a la función aún más fuentes de datos tipo matriz de bytes.
QByteArrayView debe pasarse por valor, no por referencia a const:
void myfun1(QByteArrayView bv); // preferred void myfun2(const QByteArrayView &bv); // compiles and works, but slower
Si quiere dar a sus usuarios la máxima libertad en cuanto al tipo de datos que pueden pasar a su función, acompañe la sobrecarga QByteArrayView con sobrecargas para
- char: esta sobrecarga puede delegar en la versión QByteArrayView:
void fun(QByteArrayView bv); void fun(char ch) { fun(QByteArrayView(&ch, 1)); }
aunque, por razones técnicas, QByteArrayView no puede proporcionar un constructor char por sí mismo.
- QByteArray: si almacena una copia no modificada de la matriz de bytes y desea aprovechar las ventajas de la compartición implícita de QByteArray.
QByteArrayView también se puede utilizar como el valor de retorno de una función. Si llamas a una función que devuelve QByteArrayView, ten especial cuidado de no mantener el QByteArrayView más tiempo del que la función promete para mantener vivos los datos referenciados. En caso de duda, obtenga una referencia fuerte a los datos llamando a toByteArray() para convertir el QByteArrayView en un QByteArray.
Los métodos soportados por QByteArrayView reflejan los de QByteArray. En particular, en el grado limitado en que atribuye semántica (como mayúsculas y minúsculas, espaciado, dígitos de números) a los datos de caracteres visualizados, utiliza la configuración regional de C y la codificación ASCII. Consulte C locale and ASCII functions para obtener más información y conocer las limitaciones de estos métodos.
Tipos de bytes compatibles
QByteArrayView se puede construir sobre cualquier contenedor de bytes, donde el tipo byte es uno de los siguientes:
char(tanto con signo como sin signo)std::byte
Véase también QByteArray y QStringView.
Documentación de tipos de miembros
QByteArrayView::const_iterator
Este typedef proporciona un iterador const de estilo STL para QByteArrayView.
Véase también iterator y const_reverse_iterator.
QByteArrayView::const_pointer
Alias para value_type *. Se proporciona por compatibilidad con la STL.
QByteArrayView::const_reference
Alias para value_type &. Se proporciona por compatibilidad con la STL.
QByteArrayView::const_reverse_iterator
Este typedef proporciona un iterador inverso const al estilo STL para QByteArrayView.
Véase también reverse_iterator y const_iterator.
QByteArrayView::difference_type
Alias para std::ptrdiff_t. Se proporciona por compatibilidad con la STL.
QByteArrayView::iterator
Este typedef proporciona un iterador const de estilo STL para QByteArrayView.
QByteArrayView no soporta iteradores mutables, por lo que es lo mismo que const_iterator.
Véase también const_iterator y reverse_iterator.
QByteArrayView::pointer
Alias para value_type *. Se proporciona por compatibilidad con la STL.
QByteArrayView no admite punteros mutables, por lo que es igual que const_pointer.
QByteArrayView::reference
Alias para value_type &. Se proporciona por compatibilidad con la STL.
QByteArrayView no admite referencias mutables, por lo que es igual que const_reference.
QByteArrayView::reverse_iterator
Este typedef proporciona un iterador inverso const de estilo STL para QByteArrayView.
QByteArrayView no soporta iteradores inversos mutables, por lo que es lo mismo que const_reverse_iterator.
Véase también const_reverse_iterator y iterator.
QByteArrayView::size_type
Alias para qsizetype. Se proporciona por compatibilidad con la STL.
QByteArrayView::storage_type
Alias para char.
QByteArrayView::value_type
Alias para const char. Se proporciona por compatibilidad con la STL.
Documentación de funciones miembro
[constexpr noexcept] QByteArrayView::QByteArrayView()
Construye una vista de matriz de bytes nula.
Véase también isNull().
[constexpr noexcept, since 6.9] template <typename Byte, QByteArrayView::if_compatible_byte<Byte> = true> QByteArrayView::QByteArrayView(const Byte (&)[] data)
Construye una vista de matriz de bytes en data, una matriz de tamaño desconocido. La longitud se determina buscando el primer Byte(0).
data debe permanecer válida durante el tiempo de vida de este objeto byte array view.
Restricciones
Participa en la resolución de sobrecargas sólo si Byte es un tipo de byte compatible.
Esta función se introdujo en Qt 6.9.
Véase también Compatible Byte Types.
[constexpr noexcept] template <typename Byte> QByteArrayView::QByteArrayView(const Byte *data)
Construye una vista de matriz de bytes en data. La longitud se determina buscando la primera Byte(0).
data debe permanecer válida durante el tiempo de vida de este objeto byte array view.
Pasar nullptr como data es seguro y da como resultado una vista de matriz de bytes nula.
Restricciones
Participa en la resolución de sobrecargas sólo si data no es una matriz y Byte es un tipo de byte compatible.
Véase también Compatible Byte Types.
[constexpr noexcept] template <typename Container, QByteArrayView::if_compatible_container<Container> = true> QByteArrayView::QByteArrayView(const Container &c)
Construye una vista de matriz de bytes en el contenedor tipo array c. La longitud y los datos se establecen a través de std::size(c) y std::data(c) respectivamente.
Los datos del contenedor deben permanecer válidos durante el tiempo de vida de este objeto byte array view.
Restricciones
Participa en la resolución de sobrecargas sólo si c es cualquier contenedor contiguo con elementos de un tipo byte compatible.
Véase también Compatible Byte Types.
[noexcept] QByteArrayView::QByteArrayView(const QByteArray &byteArray)
Construye una vista de matriz de bytes en byteArray.
byteArray.data() debe permanecer válida durante el tiempo de vida de este objeto byte array view.
La vista de matriz de bytes será nula si y sólo si byteArray.isNull().
[constexpr noexcept] template <size_t Size> QByteArrayView::QByteArrayView(const char (&)[Size] data)
Construye una vista de matriz de bytes en la matriz de caracteres data. La vista cubre el array hasta que se encuentra el primer '\0', o Size, lo que ocurra primero. Si necesita el array completo, utilice fromArray() en su lugar.
data debe permanecer válido durante el tiempo de vida de este objeto vista de matriz de bytes.
Nota: Este constructor sólo está disponible para arrays literales char. El motivo es la compatibilidad con las bibliotecas C que predefinen matrices "suficientemente grandes", pero sólo utilizan parte del espacio preasignado. Para soportar esto de forma intuitiva en una sobrecarga implícita del constructor, necesitamos detenernos en el primer char(0). Esto es lógico para un array char, pero no para un array std::byte. Es, sin embargo, inconsistente con los correspondientes constructores de puntero (Byte*) y de array de longitud desconocida (Byte[]), por lo que podría cambiar en una futura versión de Qt.
Véase también fromArray.
[constexpr noexcept] QByteArrayView::QByteArrayView(std::nullptr_t)
Construye una vista de matriz de bytes nula.
Véase también isNull().
[constexpr] template <typename Byte, QByteArrayView::if_compatible_byte<Byte> = true> QByteArrayView::QByteArrayView(const Byte *first, const Byte *last)
Construye una vista de matriz de bytes en first con longitud (last - first).
El rango [first,last) debe permanecer válido durante la vida de este QByteArrayView.
Pasar \nullptr como first es seguro si last es nullptr, también, y da como resultado una vista de matriz de bytes nula.
El comportamiento es indefinido si last precede a first, o first es nullptr y last no lo es.
Restricciones
Participa en la resolución de sobrecargas sólo si Byte es un tipo de byte compatible.
Véase también Compatible Byte Types.
[constexpr] template <typename Byte, QByteArrayView::if_compatible_byte<Byte> = true> QByteArrayView::QByteArrayView(const Byte *data, qsizetype len)
Construye una vista de matriz de bytes en data con la longitud len.
El rango [data,len) debe permanecer válido durante la vida de este QByteArrayView.
Pasar nullptr como data es seguro si len también es 0, y da como resultado una vista de matriz de bytes nula.
El comportamiento es indefinido si len es negativo o, cuando es positivo, si data es nullptr.
Restricciones
Participa en la resolución de sobrecargas sólo si Byte es un tipo de byte compatible.
Véase también Compatible Byte Types.
[constexpr] char QByteArrayView::at(qsizetype n) const
Devuelve el carácter en la posición n en esta vista de matriz de bytes.
El comportamiento es indefinido si n es negativo o no menor que size().
Véase también operator[](), front() y back().
[constexpr] char QByteArrayView::back() const
Devuelve el último byte de la vista de matriz de bytes.
Esta función se proporciona por compatibilidad con STL.
Advertencia: Llamar a esta función en una vista de matriz de bytes vacía constituye un comportamiento indefinido.
Véase también front().
[constexpr noexcept] QByteArrayView::const_iterator QByteArrayView::begin() const
Devuelve un iterador constante de estilo STL que apunta al primer byte de la vista de matriz de bytes.
Esta función se proporciona por compatibilidad con STL.
Véase también end(), cbegin(), rbegin() y data().
[constexpr noexcept] QByteArrayView::const_iterator QByteArrayView::cbegin() const
Igual que begin().
Esta función se proporciona por compatibilidad con STL.
Véase también cend(), begin(), crbegin() y data().
[constexpr noexcept] QByteArrayView::const_iterator QByteArrayView::cend() const
Igual que end().
Esta función se proporciona por compatibilidad con STL.
Véase también cbegin(), end() y crend().
[constexpr] void QByteArrayView::chop(qsizetype length)
Trunca esta vista de matriz de bytes en length caracteres.
Igual que *this = first(size() - length).
Nota: El comportamiento es indefinido cuando length < 0 o length > size().
Véase también sliced(), first(), last(), chopped(), truncate() y slice().
[constexpr] QByteArrayView QByteArrayView::chopped(qsizetype length) const
Devuelve una copia de esta vista de matriz de bytes que omite sus últimos length bytes. En otras palabras, devuelve una vista de matriz de bytes de longitud size() - length empezando por el principio de este objeto.
Igual que first(size() - length).
Nota: El comportamiento es indefinido cuando length < 0 o length > size().
Véase también first(), last(), sliced(), chop(), truncate(), y slice().
[noexcept, since 6.2] int QByteArrayView::compare(QByteArrayView bv, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
Devuelve un entero menor, igual o mayor que cero dependiendo de si este QByteArrayView ordena antes, en la misma posición o después que el QByteArrayView bv . La comparación se realiza teniendo en cuenta mayúsculas y minúsculas cs.
Esta función se introdujo en Qt 6.2.
Véase también operator==().
[constexpr noexcept] QByteArrayView::const_pointer QByteArrayView::constData() const
Devuelve un puntero const char al primer byte de la vista de matriz de bytes.
Nota: No se garantiza que la matriz de caracteres representada por el valor devuelto esté terminada en cero. El puntero devuelto sólo es seguro para acceder a bytes en índices que sean menores que la vista de matriz de bytes size().
Véase también data(), begin() y end().
[noexcept] bool QByteArrayView::contains(QByteArrayView bv) const
[noexcept] bool QByteArrayView::contains(char ch) const
Devuelve true si esta vista de matriz de bytes contiene una ocurrencia de la secuencia de bytes vista por bv o el carácter ch, respectivamente; en caso contrario devuelve false.
Véase también indexOf() y lastIndexOf().
[noexcept] qsizetype QByteArrayView::count(QByteArrayView bv) const
Devuelve el número de ocurrencias (potencialmente solapadas) de la secuencia de bytes visualizada por bv en esta vista de matriz de bytes.
Véase también contains() y indexOf().
[noexcept] qsizetype QByteArrayView::count(char ch) const
Devuelve el número de apariciones del byte ch en esta vista de matriz de bytes.
Se trata de una función sobrecargada.
Véase también contains() y indexOf().
[constexpr noexcept] QByteArrayView::const_reverse_iterator QByteArrayView::crbegin() const
Igual que rbegin().
Esta función se proporciona por compatibilidad con STL.
Véase también crend(), rbegin() y cbegin().
[constexpr noexcept] QByteArrayView::const_reverse_iterator QByteArrayView::crend() const
Igual que rend().
Esta función se proporciona por compatibilidad con STL.
Véase también crbegin(), rend() y cend().
[constexpr noexcept] QByteArrayView::const_pointer QByteArrayView::data() const
Devuelve un puntero const char al primer byte de la vista de matriz de bytes.
Nota: No se garantiza que la matriz de caracteres representada por el valor devuelto esté terminada en cero. El puntero devuelto sólo es seguro para acceder a bytes en índices que sean menores que size() de esta vista de matriz de bytes.
Véase también begin() y end().
[constexpr noexcept] bool QByteArrayView::empty() const
Devuelve true si esta vista de matriz de bytes está vacía - es decir, size() == 0.
Esta función se proporciona por compatibilidad con STL.
Véase también isEmpty(), isNull(), y size().
[constexpr noexcept] QByteArrayView::const_iterator QByteArrayView::end() const
Devuelve un iterador constante de estilo STL que apunta justo después del último byte en la vista de matriz de bytes.
Esta función se proporciona por compatibilidad con STL.
Véase también begin(), cend(), y rend().
[noexcept] bool QByteArrayView::endsWith(QByteArrayView bv) const
[constexpr noexcept] bool QByteArrayView::endsWith(char ch) const
Devuelve true si esta vista de matriz de bytes termina con la vista de matriz de bytes bv o el carácter ch, respectivamente; en caso contrario devuelve false.
Véase también startsWith().
[constexpr] QByteArrayView QByteArrayView::first(qsizetype n) const
Devuelve una vista de matriz de bytes que apunta a los primeros n bytes de esta vista de matriz de bytes. Equivale a sliced(0, n).
Nota: El comportamiento es indefinido cuando n < 0 o n > size().
Véase también last(), startsWith(), chopped(), chop(), truncate(), sliced(), y slice().
[static constexpr noexcept] template <typename Byte, size_t Size> QByteArrayView QByteArrayView::fromArray(const Byte (&)[Size] data)
Construye una vista de matriz de bytes en la matriz literal data. La vista cubre el array completo. Esto incluye el terminador nulo final de los literales de matriz char. Si no desea incluir el terminador nulo en la vista, puede eliminarlo en chop() cuando esté seguro de que se encuentra al final. Alternativamente, puede utilizar la sobrecarga del constructor tomando un literal de matriz char que creará una vista hasta, pero sin incluir, el primer terminador nulo de los datos.
Esta función funcionará con cualquier literal de matriz de tipo byte compatible.
Véase también Compatible Byte Types y QByteArrayView.
[constexpr] char QByteArrayView::front() const
Devuelve el primer byte de la vista de matriz de bytes.
Esta función se proporciona por compatibilidad con STL.
Advertencia: Llamar a esta función en una vista de matriz de bytes vacía constituye un comportamiento indefinido.
Véase también back().
[noexcept] qsizetype QByteArrayView::indexOf(QByteArrayView bv, qsizetype from = 0) const
[noexcept] qsizetype QByteArrayView::indexOf(char ch, qsizetype from = 0) const
Devuelve la posición del índice del inicio de la primera ocurrencia de la secuencia de bytes vista por bv o la primera ocurrencia del byte ch, respectivamente, en esta vista de matriz de bytes, buscando hacia adelante desde la posición del índice from.Returns -1 si no se encuentra ninguna coincidencia.
Si from es -1, la búsqueda comienza en el último carácter; si es -2, en el penúltimo carácter y así sucesivamente.
Véase también lastIndexOf() y contains().
[constexpr noexcept] bool QByteArrayView::isEmpty() const
Devuelve true si esta vista de matriz de bytes está vacía - es decir, size() == 0.
Véase también empty(), isNull(), y size().
[constexpr noexcept] bool QByteArrayView::isNull() const
Devuelve true si esta vista de matriz de bytes es nula - es decir, data() == nullptr.
Véase también empty(), isEmpty(), y size().
[noexcept, since 6.3] bool QByteArrayView::isValidUtf8() const
Devuelve true si esta vista de matriz de bytes contiene datos codificados en UTF-8 válidos, o false en caso contrario.
Esta función se introdujo en Qt 6.3.
[constexpr] QByteArrayView QByteArrayView::last(qsizetype n) const
Devuelve una vista de matriz de bytes que apunta a los últimos n bytes de esta vista de matriz de bytes.
Nota: El comportamiento es indefinido cuando n < 0 o n > size().
Véase también first(), endsWith(), chopped(), chop(), truncate(), sliced() y slice().
[noexcept] qsizetype QByteArrayView::lastIndexOf(QByteArrayView bv, qsizetype from) const
[noexcept] qsizetype QByteArrayView::lastIndexOf(char ch, qsizetype from = -1) const
Devuelve la posición del índice del inicio de la última ocurrencia de la secuencia de bytes vista por bv o la última ocurrencia del byte ch, respectivamente, en esta vista de matriz de bytes, buscando hacia atrás desde la posición del índice from.
Si from es -1, la búsqueda comienza en el último carácter; si es -2, en el penúltimo carácter y así sucesivamente.
Devuelve -1 si no se encuentra ninguna coincidencia.
Nota: Cuando se busca una bv de longitud 0, la coincidencia al final de los datos se excluye de la búsqueda mediante un from negativo, aunque -1 se considere normalmente como una búsqueda desde el final de la vista: la coincidencia al final está después del último carácter, por lo que se excluye. Para incluir esta coincidencia final vacía, dé un valor positivo a from u omita por completo el parámetro from.
Véase también indexOf() y contains().
[noexcept, since 6.2] qsizetype QByteArrayView::lastIndexOf(QByteArrayView bv) const
Devuelve la posición del índice del inicio de la última aparición de la secuencia de bytes visualizada por bv en esta vista de matriz de bytes, buscando hacia atrás desde el final de esta vista de matriz de bytes. Devuelve -1 si no se encuentra ninguna coincidencia.
Se trata de una función sobrecargada.
Esta función se introdujo en Qt 6.2.
Véase también indexOf() y contains().
[constexpr noexcept] qsizetype QByteArrayView::length() const
Igual que size().
Véase también empty(), isEmpty(), isNull() y size().
[static constexpr noexcept, since 6.8] qsizetype QByteArrayView::maxSize()
Devuelve el número máximo de elementos que teóricamente puede representar la vista. En la práctica, el número puede ser mucho menor, limitado por la cantidad de memoria disponible en el sistema.
Esta función se introdujo en Qt 6.8.
[constexpr noexcept, since 6.8] qsizetype QByteArrayView::max_size() const
Esta función se proporciona por compatibilidad con STL.
Devuelve maxSize().
Esta función se introdujo en Qt 6.8.
[constexpr noexcept] QByteArrayView::const_reverse_iterator QByteArrayView::rbegin() const
Devuelve un iterador inverso de estilo STL que apunta al primer byte de la vista de matriz de bytes, en orden inverso.
Esta función se proporciona por compatibilidad con STL.
Véase también rend(), crbegin() y begin().
[constexpr noexcept] QByteArrayView::const_reverse_iterator QByteArrayView::rend() const
Devuelve un iterador inverso de estilo STL que apunta al último byte de la vista de matriz de bytes, en orden inverso.
Esta función se proporciona por compatibilidad con STL.
Véase también rbegin(), crend() y end().
[constexpr noexcept] qsizetype QByteArrayView::size() const
Devuelve el número de bytes en esta vista de matriz de bytes.
Véase también empty(), isEmpty() y isNull().
[constexpr, since 6.8] QByteArrayView &QByteArrayView::slice(qsizetype pos, qsizetype n)
Modifica esta vista de matriz de bytes para que comience en la posición pos, extendiéndose para n bytes.
Nota: El comportamiento es indefinido cuando pos < 0, n < 0, o pos + n > size().
Esta función se introdujo en Qt 6.8.
Véase también sliced(), first(), last(), chopped(), chop(), y truncate().
[constexpr, since 6.8] QByteArrayView &QByteArrayView::slice(qsizetype pos)
Modifica esta vista de matriz de bytes para que comience en la posición pos, extendiéndose hasta su final.
Nota: El comportamiento es indefinido cuando pos < 0 o pos > size().
Esta es una función sobrecargada.
Esta función se introdujo en Qt 6.8.
Ver también sliced(), first(), last(), chopped(), chop(), y truncate().
[constexpr] QByteArrayView QByteArrayView::sliced(qsizetype pos) const
Devuelve una vista de matriz de bytes que comienza en la posición pos en este objeto, y se extiende hasta su final.
Nota: El comportamiento es indefinido cuando pos < 0 o pos > size().
Véase también first(), last(), chopped(), chop(), truncate(), y slice().
[constexpr] QByteArrayView QByteArrayView::sliced(qsizetype pos, qsizetype n) const
Devuelve una vista de matriz de bytes que apunta a n bytes de esta vista de matriz de bytes, comenzando en la posición pos.
Nota: El comportamiento es indefinido cuando pos < 0, n < 0, o pos + n > size().
Véase también first(), last(), chopped(), chop(), truncate(), y slice().
[noexcept] bool QByteArrayView::startsWith(QByteArrayView bv) const
[constexpr noexcept] bool QByteArrayView::startsWith(char ch) const
Devuelve true si esta vista de matriz de bytes comienza con la vista de matriz de bytes bv o el carácter ch, respectivamente; en caso contrario devuelve false.
Véase también endsWith().
QByteArray QByteArrayView::toByteArray() const
Devuelve una copia profunda de los datos de esta vista de matriz de bytes como QByteArray.
El valor devuelto será un null QByteArray si y sólo si esta vista de matriz de bytes es null.
[since 6.3] double QByteArrayView::toDouble(bool *ok = nullptr) const
Devuelve esta vista de matriz de bytes convertida a un valor double.
Devuelve un infinito si la conversión se desborda o 0.0 si la conversión falla por otras razones (por ejemplo, desbordamiento por defecto).
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Advertencia: El contenido de QByteArrayView sólo puede contener caracteres numéricos válidos, lo que incluye el signo más/menos, el carácter e utilizado en notación científica y el punto decimal. La inclusión de la unidad o de caracteres adicionales provoca un error de conversión.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utilice QLocale para realizar conversiones locales entre números y cadenas.
Esta función ignora los caracteres de espaciado inicial y final.
Esta función se introdujo en Qt 6.3.
[since 6.3] float QByteArrayView::toFloat(bool *ok = nullptr) const
Devuelve esta vista de matriz de bytes convertida a un valor float.
Devuelve un infinito si la conversión se desborda o 0.0 si la conversión falla por otras razones (por ejemplo, desbordamiento por defecto).
Si ok no es nullptr, el fallo se notifica estableciendo *ok en false, y el éxito estableciendo *ok en true.
QByteArrayView string("1234.56 Volt"); bool ok; float a = string.toFloat(&ok); // a == 0, ok == false a = string.first(7).toFloat(&ok); // a == 1234.56, ok == true
Advertencia: El contenido de QByteArrayView sólo puede contener caracteres numéricos válidos, lo que incluye el signo más/menos, el carácter e utilizado en notación científica y el punto decimal. La inclusión de la unidad o de caracteres adicionales provoca un error de conversión.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utilice QLocale para realizar conversiones locales entre números y cadenas.
Esta función ignora los espacios en blanco iniciales y finales.
Esta función se introdujo en Qt 6.3.
[since 6.3] int QByteArrayView::toInt(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a int utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
QByteArrayView str("FF"); bool ok; int hex = str.toInt(&ok, 16); // hex == 255, ok == true int dec = str.toInt(&ok, 10); // dec == 0, ok == false
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] long QByteArrayView::toLong(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a un int long utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
QByteArrayView str("FF"); bool ok; long hex = str.toLong(&ok, 16); // hex == 255, ok == true long dec = str.toLong(&ok, 10); // dec == 0, ok == false
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] qlonglong QByteArrayView::toLongLong(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a long long utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] short QByteArrayView::toShort(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a short utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] uint QByteArrayView::toUInt(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a unsigned int utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] ulong QByteArrayView::toULong(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a unsigned long int utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] qulonglong QByteArrayView::toULongLong(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a unsigned long long utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[since 6.3] ushort QByteArrayView::toUShort(bool *ok = nullptr, int base = 10) const
Devuelve esta vista de matriz de bytes convertida a unsigned short utilizando la base base, que es diez por defecto. Se admiten las bases 0 y 2 hasta 36, utilizando letras para los dígitos más allá de 9; A es diez, B es once y así sucesivamente.
Si base es 0, la base se determina automáticamente utilizando las siguientes reglas: si la vista de la matriz de bytes comienza con "0x", el resto se lee como hexadecimal (base 16); de lo contrario, si comienza con "0", el resto se lee como octal (base 8); de lo contrario, se lee como decimal.
Devuelve 0 si la conversión falla.
Si ok no es nullptr, se informa del fallo estableciendo *ok en false, y del éxito estableciendo *ok en true.
Nota: La conversión del número se realiza en la configuración regional predeterminada de C, independientemente de la configuración regional del usuario. Utiliza QLocale para realizar conversiones locales entre números y cadenas.
Esta función se introdujo en Qt 6.3.
[noexcept, since 6.3] QByteArrayView QByteArrayView::trimmed() const
Devuelve una copia de esta vista de matriz de bytes con los caracteres de espaciado eliminados del inicio y del final.
Los caracteres de espaciado son aquellos para los que la función estándar de C++ isspace() devuelve true en la configuración regional de C; estos son los caracteres ASCII tabulación '\t', avance de línea '\n', retorno de carro '\r', tabulación vertical '\v', avance de forma '\f', y espacio ' '.
Esta función se introdujo en Qt 6.3.
Véase también QChar::SpecialCharacter y Spacing Characters.
[constexpr] void QByteArrayView::truncate(qsizetype length)
Trunca esta vista de matriz de bytes a la longitud length.
Igual que *this = first(length).
Nota: El comportamiento es indefinido cuando length < 0 o length > size().
Véase también first(), last(), sliced(), chopped() y chop().
[constexpr noexcept, since 6.7] QByteArrayView::operator std::string_view() const
Convierte este objeto QByteArrayView en un objeto std::string_view. La vista devuelta tendrá el mismo puntero de datos y longitud de esta vista.
Esta función se introdujo en Qt 6.7.
[constexpr] char QByteArrayView::operator[](qsizetype n) const
Devuelve el carácter en la posición n en esta vista de matriz de bytes.
El comportamiento es indefinido si n es negativo o no menor que size().
No miembros relacionados
[noexcept] bool operator==(const QByteArrayView &lhs, const QByteArrayView &rhs)
[noexcept] bool operator!=(const QByteArrayView &lhs, const QByteArrayView &rhs)
[noexcept] bool operator<(const QByteArrayView &lhs, const QByteArrayView &rhs)
[noexcept] bool operator<=(const QByteArrayView &lhs, const QByteArrayView &rhs)
[noexcept] bool operator>(const QByteArrayView &lhs, const QByteArrayView &rhs)
[noexcept] bool operator>=(const QByteArrayView &lhs, const QByteArrayView &rhs)
Operadores de comparación para QByteArrayView.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.