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
Tipo de los valores (elementos) que el array_view vistas o abarca.
Requisitos
SDK mínimo admitido: Windows SDK, versión 10.0.17134.0 (Windows 10, versión 1803)
Espacio de nombres: winrt
Encabezado: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (incluido de forma predeterminada)
Alias de tipo de miembro
Nombre de alias | Tipo |
---|---|
array_view::value_type | Sinónimo del parámetro de typename T plantilla. |
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 |
---|---|
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). |
Funciones miembro
Función | Descripción |
---|---|
array_view::at (función) | Devuelve una referencia al elemento situado 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 . |
función array_view::begin | Devuelve un iterador al primer elemento del objeto array_view . |
función array_view::cbegin | Devuelve un 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 . |
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 . |
función array_view::crend | Devuelve un 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 . |
función array_view::empty | Devuelve un valor que indica si el objeto array_view está vacío (es una vista en cero elementos). |
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 . |
función array_view::front | Devuelve una referencia al primer elemento 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 . |
función array_view::rend | 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 situado en la posición especificada dentro del objeto array_view . |
Operadores gratuitos
Operador | Descripción |
---|---|
operator!= (operador de desigualdad) | Devuelve un valor que indica si los dos parámetros no son iguales entre sí. |
operador (operador< menor que) | Devuelve un valor que indica si el primer parámetro es menor que el segundo parámetro. |
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. |
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. |
operator>= (operador mayor o igual que) | Devuelve un valor que indica si el primer parámetro es mayor o igual que el segundo parámetro. |
Iterators
Un array_view es un intervalo y ese intervalo se define mediante las funciones miembro array_view::begin y array_view::end , 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 basada en for
intervalos o con la función de plantilla std::for_each .
#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
Número de valores (elementos) de 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 situado 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
Posición de elemento de base cero o índice.
Valor devuelto
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 .
Sintaxis
T const& back() const noexcept;
T& back() noexcept;
Valor devuelto
Referencia al último elemento del objeto array_view .
array_view::begin (Función)
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 .
array_view::cbegin (Función)
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 .
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 . 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 .
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 .
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 .
array_view::crend (función)
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 .
array_view::empty (función)
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
es si el objeto array_view está vacío (es una vista en cero elementos), en caso contrario false
, es .
array_view::end (Función)
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 .
array_view::front (Función)
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 situado 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
Posición de elemento de base cero o índice.
Valor devuelto
Referencia al elemento en la posición especificada dentro del objeto array_view .
array_view::rbegin (función)
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 .
array_view::rend (Función)
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
que uint32_t
contiene el número de elementos del objeto array_view .
operator!= (operador de desigualdad)
Devuelve un valor que indica si los dos parámetros no 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
es si los dos parámetros no son iguales entre sí; de lo contrario false
, es .
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
es si el primer parámetro es menor que el segundo parámetro; de lo contrario false
, es .
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
es si los dos parámetros son iguales entre sí; de lo contrario false
, es .
operador> (operador mayor que)
Devuelve un valor que indica si el primer parámetro es mayor que el segundo.
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
es si el primer parámetro es mayor que el segundo parámetro; de lo contrario false
, es .
operator>= (operador greater-than-or-equal-to)
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
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de