Compartir a través de


Plantilla de estructura winrt::array_view (C++/WinRT)

Vista, o intervalo, de una serie contigua de valores. Para obtener más ejemplos e información sobre winrt::array_view, consulta tipos de datos estándar de C++ y C++/WinRT.

Sintaxis

template <typename T>
struct array_view

Parámetros de plantilla

typename T El tipo de los valores (elementos) que abarca las vistas de array_view o abarca.

Requisitos

SDK mínimo admitido: Windows SDK versión 10.0.17134.0 (Windows 10, versión 1803)

Namespace: winrt

encabezado : %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (incluido de forma predeterminada)

Alias de tipo de miembro

Nombre del alias Tipo
array_view::value_type Sinónimo del parámetro de plantilla de typename T.
array_view::size_type Sinónimo de uint32_t.
array_view::reference Sinónimo de array_view::value_type&.
array_view::const_reference Sinónimo de array_view::value_type const&.
array_view::p ointer Sinónimo de array_view::value_type*.
array_view::const_pointer Sinónimo de array_view::value_type const*.
array_view::iterator Sinónimo de un iterador de matriz definido por la implementación de array_view::value_type.
array_view::const_iterator Sinónimo de un iterador de matriz definido por la implementación de array_view::value_type const.
array_view::reverse_iterator Sinónimo de std::reverse_iterator<array_view::iterator>.
array_view::const_reverse_iterator Sinónimo de std::reverse_iterator<array_view::const_iterator>.

Constructores

Constructor Descripción
array_view::array_view constructor Inicializa una nueva instancia de la estructura array_view como una vista de los datos de entrada (y no una copia).

Funciones miembro

Función Descripción
array_view::at de función Devuelve una referencia al elemento en la posición especificada dentro del objeto array_view.
array_view::back (función) Devuelve una referencia al último elemento del objeto array_view.
array_view::begin (función) Devuelve un iterador al primer elemento del objeto array_view.
array_view::cbegin (función) Devuelve un iterador const al primer elemento del objeto array_view.
array_view::cend (función) Devuelve un iterador const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.
array_view::crbegin (función) Devuelve un iterador inverso const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.
array_view::crend (función) Devuelve un iterador inverso const al primer elemento del objeto array_view.
de función array_view::d ata Devuelve un puntero a los datos subyacentes que ve el objeto array_view.
array_view::empty (función) Devuelve un valor que indica si el objeto array_view está vacío (es una vista en cero elementos).
de función array_view::end Devuelve un iterador a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.
array_view::front function Devuelve una referencia al primer elemento del objeto array_view.
array_view de función::rbegin Devuelve un iterador inverso a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.
array_view::rend (función) Devuelve un iterador inverso al primer elemento del objeto array_view.
array_view::size (función) Devuelve el número de elementos del objeto array_view.

Operadores de miembro

Operador Descripción
array_view::operator[] (operador de subíndice) Devuelve una referencia al elemento en la posición especificada dentro del objeto array_view.

Operadores gratuitos

Operador Descripción
operador != (operador de desigualdad) Devuelve un valor que indica si los dos parámetros son distintos entre sí.
operador< (operador menor que) Devuelve un valor que indica si el primer parámetro es menor que el segundo parámetro.
operador<= (operador menor o igual que) Devuelve un valor que indica si el primer parámetro es menor o igual que el segundo parámetro.
operator== (operador de igualdad) Devuelve un valor que indica si los dos parámetros son iguales entre sí.
operador> (operador mayor que) Devuelve un valor que indica si el primer parámetro es mayor que el segundo parámetro.
operador>= (operador mayor o igual que) Devuelve un valor que indica si el primer parámetro es mayor o igual que el segundo parámetro.

Iteradores

Un array_view es un intervalo y ese intervalo se define mediante la array_view::begin y array_view::end funciones miembro, cada una de las cuales devuelve un iterador (consulte también array_view::cbegin y array_view::cend). Por este motivo, puede enumerar los caracteres de un objeto array_view con una instrucción de basada en intervalos o con la función std::for_each template de .

#include <iostream>
using namespace winrt;
...
template <typename T>
void Iterators(array_view<T> const& theArrayView)
{
    for (T& element : theArrayView)
    {
        std::wcout << element << " ";
    }

    std::for_each(theArrayView.cbegin(), theArrayView.cend(), [](T const& element) { std::wcout << element << " "; });
}

constructor array_view::array_view

Inicializa una nueva instancia de la estructura array_view como una vista de los datos de entrada (y no una copia).

Sintaxis

array_view() noexcept;
template <typename C, uint32_t N> array_view(C(&rawArrayValue)[N]) noexcept;
template <typename C, uint32_t N> array_view(std::array<C, N> const& arrayValue) noexcept;
template <typename C, uint32_t N> array_view(std::array<C, N>& arrayValue) noexcept;
array_view(std::initializer_list<T> initializerListValue) noexcept;
template <typename C> array_view(std::vector<C> const& vectorValue) noexcept;
template <typename C> array_view(std::vector<C>& vectorValue) noexcept;
array_view(T* first, T* last) noexcept;

Parámetros de plantilla

typename C Tipo de los valores (elementos) de los datos de entrada.

uint32_t N El número de valores (elementos) en los datos de entrada.

Parámetros

rawArrayValue valor de matriz sin formato que inicializa el objeto array_view.

arrayValue valor std::array que inicializa el objeto array_view.

initializerListValue valor de lista de inicializadores que inicializa el objeto array_view.

vectorValue Valor std::vector que inicializa el objeto array_view.

first last Punteros a valores con los que inicializar el objeto array_view. Si first es igual a last, el objeto array_view está vacío.

Ejemplo

using namespace winrt;
...
void Constructors()
{
    // array_view() noexcept
    array_view<byte const> fromDefault{};

    byte theRawArray[]{ 99, 98, 97 };

    // template <typename C, uint32_t N> array_view(C(&value)[N]) noexcept
    array_view<byte const> fromRawArray{ theRawArray };

    const std::array<byte, 3> theConstArray{ 99, 98, 97 };

    // template <typename C, uint32_t N> array_view(std::array<C, N>& value) noexcept
    array_view<byte const> fromConstArray{ theConstArray };

    std::array<byte, 3> theArray{ 99, 98, 97 };

    // template <typename C, uint32_t N> array_view(std::array<C, N> const& value) noexcept
    array_view<byte const> fromArray{ theArray };

    // array_view(std::initializer_list<T> value) noexcept
    array_view<byte const> fromInitializerList{ 99, 98, 97 };

    const std::vector<byte> theConstVector{ 99, 98, 97 };

    // template <typename C> array_view(std::vector<C> const& value) noexcept
    array_view<byte const> fromConstVector{ theConstVector };

    std::vector<byte> theVector{ 99, 98, 97 };

    // template <typename C> array_view(std::vector<C>& value) noexcept
    array_view<byte const> fromVector{ theVector };

    // array_view(T* first, T* last) noexcept
    array_view<byte const> fromRange{ theArray.data(), theArray.data() + 2 }; // just the first two elements.
}

array_view::at (función)

Devuelve una referencia al elemento en la posición especificada dentro del objeto array_view.

Sintaxis

T& at(uint32_t const pos);
T const& at(uint32_t const pos) const;

Parámetros

pos una posición de elemento de base cero o índice.

Valor devuelto

Referencia al elemento en la posición especificada dentro del objeto array_view.

función array_view::back

Devuelve una referencia al último elemento del objeto array_view.

Sintaxis

T const& back() const noexcept;
T& back() noexcept;

Valor devuelto

Referencia al último elemento del objeto array_view.

función array_view::begin

Devuelve un iterador al primer elemento del objeto array_view. Consulte iteradores.

Sintaxis

stdext::checked_array_iterator<T const> begin() const noexcept;
stdext::checked_array_iterator<T> begin() noexcept;

Valor devuelto

Iterador al primer elemento del objeto array_view.

función array_view::cbegin

Devuelve un iterador const al primer elemento del objeto array_view. Consulte iteradores.

Sintaxis

stdext::checked_array_iterator<T const> cbegin() const noexcept;

Valor devuelto

Iterador const al primer elemento del objeto array_view.

función array_view::cend

Devuelve un iterador const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view. Consulte iteradores.

Sintaxis

stdext::checked_array_iterator<T const> cend() const noexcept;

Valor devuelto

Iterador const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

función array_view::crbegin

Devuelve un iterador inverso const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

Sintaxis

std::reverse_iterator<stdext::checked_array_iterator<T const>> crbegin() const noexcept;

Valor devuelto

Iterador inverso const a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

función array_view::crend

Devuelve un iterador inverso const al primer elemento del objeto array_view.

Sintaxis

std::reverse_iterator<stdext::checked_array_iterator<T const>> crend() const noexcept;

Valor devuelto

Iterador inverso const al primer elemento del objeto array_view.

función array_view::d ata

Devuelve un puntero a los datos subyacentes que ve el objeto array_view.

Sintaxis

T const* data() const noexcept;
T* data() noexcept;

Valor devuelto

Puntero a los datos subyacentes que ve el objeto array_view.

función array_view::empty

Devuelve un valor que indica si el objeto array_view está vacío (es una vista en cero elementos).

Sintaxis

bool empty() const noexcept;

Valor devuelto

true si el objeto array_view está vacío (es una vista en cero elementos), de lo contrario, false.

función array_view::end

Devuelve un iterador a uno más allá del final de (uno más allá del último elemento de) el objeto array_view. Consulte iteradores.

Sintaxis

stdext::checked_array_iterator<T const> end() const noexcept;
stdext::checked_array_iterator<T> end() noexcept;

Valor devuelto

Iterador a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

función array_view::front

Devuelve una referencia al primer elemento del objeto array_view.

Sintaxis

T const& front() const noexcept;
T& front() noexcept;

Valor devuelto

Referencia al primer elemento del objeto array_view.

array_view::operator[] (operador de subíndice)

Devuelve una referencia al elemento en la posición especificada dentro del objeto array_view.

Sintaxis

T const& operator[](uint32_t const pos) const noexcept;
T& operator[](uint32_t const pos) noexcept;

Parámetros

pos una posición de elemento de base cero o índice.

Valor devuelto

Referencia al elemento en la posición especificada dentro del objeto array_view.

función array_view::rbegin

Devuelve un iterador inverso a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

Sintaxis

std::reverse_iterator<stdext::checked_array_iterator<T const>> rbegin() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rbegin() noexcept;

Valor devuelto

Iterador inverso a uno más allá del final de (uno más allá del último elemento de) el objeto array_view.

función array_view::rend

Devuelve un iterador inverso al primer elemento del objeto array_view.

Sintaxis

std::reverse_iterator<stdext::checked_array_iterator<T const>> rend() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rend() noexcept;

Valor devuelto

Iterador inverso al primer elemento del objeto array_view.

array_view::size (función)

Devuelve el número de elementos del objeto array_view.

Sintaxis

uint32_t size() const noexcept;

Valor devuelto

Un uint32_t que contiene el número de elementos del objeto array_view.

operator!= (operador de desigualdad)

Devuelve un valor que indica si los dos parámetros son distintos entre sí.

Sintaxis

template <typename T> bool operator!=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si los dos parámetros no son iguales entre sí; de lo contrario, false.

operador< (operador menor que)

Devuelve un valor que indica si el primer parámetro es menor que el segundo parámetro.

Sintaxis

template <typename T> bool operator<(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si el primer parámetro es menor que el segundo parámetro; de lo contrario, false.

operator<= (operador menor o igual que)

Devuelve un valor que indica si el primer parámetro es menor o igual que el segundo parámetro.

Sintaxis

template <typename T> bool operator<=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si el primer parámetro es menor o igual que el segundo parámetro; de lo contrario, false.

operator== (operador de igualdad)

Devuelve un valor que indica si los dos parámetros son iguales entre sí.

Sintaxis

template <typename T> bool operator==(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si los dos parámetros son iguales entre sí; de lo contrario, false.

operador> (operador mayor que)

Devuelve un valor que indica si el primer parámetro es mayor que el segundo parámetro.

Sintaxis

template <typename T> bool operator>(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si el primer parámetro es mayor que el segundo parámetro; de lo contrario, false.

operator>= (operador mayor que o igual que)

Devuelve un valor que indica si el primer parámetro es mayor o igual que el segundo parámetro.

Sintaxis

template <typename T> bool operator>=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;

Parámetros

left right Valor de array_view que se va a comparar con el otro parámetro.

Valor devuelto

true si el primer parámetro es mayor o igual que el segundo parámetro; de lo contrario, false.

Consulte también

  • de espacio de nombres winrt