Compartir vía


funciones<span>

El encabezado <span> incluye las siguientes funciones no miembro que operan en objetos span.

Funciones no miembro Descripción
as_bytes Obtiene una vista de solo lectura de la representación de objeto de los elementos del intervalo.
as_writable_bytes Obtiene una vista de lectura y escritura de la representación de objeto de los elementos del intervalo.

as_bytes

Obtiene una vista de solo lectura de la representación de objeto de los elementos del intervalo.

template <class T, size_t Extent>
auto as_bytes(span<T, Extent> s) noexcept;

Parámetros

T
Tipo de los elementos del intervalo.

Extent
Número de elementos del intervalo (si se conoce en tiempo de compilación), de lo contrario, dynamic_extent que indica que el número de elementos no se conoce hasta el tiempo de ejecución.

s
Intervalo del que se va a obtener la representación sin procesar.

Valor devuelto

span<const byte, S> al primer elemento almacenado en el intervalo donde S es {reinterpret_cast<const std::byte*>(s.data()), s.size_bytes()}

Ejemplo

#include <span>
#include <iostream>

using namespace std;

void main()
{
    int a[] = { 0,1,2 };
    span <int> mySpan(a);
    auto bytes = std::as_bytes(mySpan);
}

as_writable_bytes

Si T no es const, obtiene una vista de lectura y escritura de la representación de bytes sin formato de los elementos del intervalo.

template <class T, size_t Extent>
auto as_writable_bytes(span<T, Extent> s) noexcept;

Parámetros

T
Tipo de los elementos del intervalo.

Extent
Número de elementos del intervalo (si se conoce en tiempo de compilación), de lo contrario, dynamic_extent que indica que el número de elementos no se conoce hasta el tiempo de ejecución.

s
Intervalo del que se va a obtener la representación sin procesar.

Valor devuelto

span<byte, S> al primer elemento almacenado en el intervalo donde S es {reinterpret_cast<std::byte*>(s.data()), s.size_bytes()}

Ejemplo

#include <span>
#include <iostream>

using namespace std;

void main()
{
    int a[] = { 0,1,2 };
    span <int> mySpan(a);
    auto bytes = as_writable_bytes(mySpan);
}

Consulte también

<span>