Modello di struct winrt::array_view (C++/WinRT)
Visualizzazione, o intervallo, di una serie contigua di valori. Per altri esempi e info su winrt::array_view, vedere tipi di dati C++ Standard e C++/WinRT.
Sintassi
template <typename T>
struct array_view
Parametri del modello
typename T
Tipo di valori (elementi) a cui array_view o si estende.
Fabbisogno
SDK minimo supportato: Windows SDK versione 10.0.17134.0 (Windows 10, versione 1803)
Namespace: winrt
intestazione : %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (incluso per impostazione predefinita)
Alias del tipo di membro
Nome alias | Digitare |
---|---|
array_view::value_type | Sinonimo del parametro del modello typename T . |
array_view::size_type | Sinonimo di uint32_t. |
array_view::reference | Sinonimo di array_view::value_type&. |
array_view::const_reference | Sinonimo di array_view::value_type const&. |
array_view::p ointer | Sinonimo di array_view::value_type*. |
array_view::const_pointer | Sinonimo di array_view::value_type const*. |
array_view::iterator | Sinonimo di un iteratore di matrice definito dall'implementazione di array_view::value_type. |
array_view::const_iterator | Sinonimo di un iteratore di matrice definito dall'implementazione di array_view::value_type const. |
array_view::reverse_iterator | Sinonimo di std::reverse_iterator<array_view::iterator>. |
array_view::const_reverse_iterator | Sinonimo di std::reverse_iterator<array_view::const_iterator>. |
Costruttori
Costruttore | Descrizione |
---|---|
del costruttore |
Inizializza una nuova istanza dello struct array_view come visualizzazione (e non una copia dei dati di input). |
Funzioni membro
Funzione | Descrizione |
---|---|
array_view::at della funzione | Restituisce un riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view. |
funzione array_view::back | Restituisce un riferimento all'ultimo elemento nell'oggetto array_view. |
funzione array_view::begin | Restituisce un iteratore al primo elemento dell'oggetto array_view. |
funzione array_view::cbegin | Restituisce un iteratore const al primo elemento dell'oggetto array_view. |
funzione array_view::cend | Restituisce un iteratore const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. |
funzione array_view::crbegin | Restituisce un iteratore inverso const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. |
funzione array_view::crend | Restituisce un iteratore inverso const al primo elemento dell'oggetto array_view. |
funzione array_view::d ata | Restituisce un puntatore ai dati sottostanti visualizzati dall'oggetto array_view. |
array_view::empty function | Restituisce un valore che indica se l'oggetto array_view è vuoto (è una visualizzazione su zero elementi). |
funzione |
Restituisce un iteratore a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. |
array_view::front function | Restituisce un riferimento al primo elemento dell'oggetto array_view. |
funzione array_view::rbegin | Restituisce un iteratore inverso a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. |
funzione array_view::rend | Restituisce un iteratore inverso al primo elemento dell'oggetto array_view. |
funzione array_view::size | Restituisce il numero di elementi nell'oggetto array_view. |
Operatori membro
Operatore | Descrizione |
---|---|
|
Restituisce un riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view. |
Operatori gratuiti
Operatore | Descrizione |
---|---|
operator!= (operatore di disuguaglianza) | Restituisce un valore che indica se i due parametri non sono uguali tra loro. |
operatore< (operatore minore di) | Restituisce un valore che indica se il primo parametro è minore del secondo parametro. |
operatore<= (operatore minore o uguale a) | Restituisce un valore che indica se il primo parametro è minore o uguale al secondo parametro. |
|
Restituisce un valore che indica se i due parametri sono uguali l'uno all'altro. |
> dell'operatore (operatore maggiore di) | Restituisce un valore che indica se il primo parametro è maggiore del secondo parametro. |
operatore |
Restituisce un valore che indica se il primo parametro è maggiore o uguale al secondo parametro. |
Iteratori
Un array_view è un intervallo e tale intervallo viene definito dalle funzioni membro array_view::begin e array_view::end, ognuna delle quali restituisce un iteratore (vedere anche array_view::cbegin e array_view::cend). Per questo motivo, è possibile enumerare i caratteri in un oggetto
#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 << " "; });
}
Costruttore array_view::array_view
Inizializza una nuova istanza dello struct array_view come visualizzazione (e non una copia dei dati di input).
Sintassi
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;
Parametri del modello
typename C
Tipo di valori (elementi) nei dati di input.
uint32_t N
Numero di valori (elementi) nei dati di input.
Parametri
rawArrayValue
Valore matrice non elaborato che inizializza l'oggetto array_view.
initializerListValue
Valore dell'elenco di inizializzatori che inizializza l'oggetto array_view.
vectorValue
Valore std::vector che inizializza l'oggetto array_view.
first
last
Puntatori ai valori con cui inizializzare l'oggetto array_view. Se first
è uguale a last
, l'oggetto array_view è vuoto.
Esempio
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.
}
funzione array_view::at
Restituisce un riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view.
Sintassi
T& at(uint32_t const pos);
T const& at(uint32_t const pos) const;
Parametri
pos
Una posizione dell'elemento in base zero o un indice.
Valore restituito
Riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view.
funzione array_view::back
Restituisce un riferimento all'ultimo elemento nell'oggetto array_view.
Sintassi
T const& back() const noexcept;
T& back() noexcept;
Valore restituito
Riferimento all'ultimo elemento nell'oggetto array_view.
funzione array_view::begin
Restituisce un iteratore al primo elemento dell'oggetto array_view. Vedere Iteratori.
Sintassi
stdext::checked_array_iterator<T const> begin() const noexcept;
stdext::checked_array_iterator<T> begin() noexcept;
Valore restituito
Iteratore al primo elemento dell'oggetto array_view.
funzione array_view::cbegin
Restituisce un iteratore const al primo elemento dell'oggetto array_view. Vedere Iteratori.
Sintassi
stdext::checked_array_iterator<T const> cbegin() const noexcept;
Valore restituito
Iteratore const al primo elemento dell'oggetto array_view.
funzione array_view::cend
Restituisce un iteratore const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. Vedere Iteratori.
Sintassi
stdext::checked_array_iterator<T const> cend() const noexcept;
Valore restituito
Iteratore const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
funzione array_view::crbegin
Restituisce un iteratore inverso const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
Sintassi
std::reverse_iterator<stdext::checked_array_iterator<T const>> crbegin() const noexcept;
Valore restituito
Iteratore inverso const a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
funzione array_view::crend
Restituisce un iteratore inverso const al primo elemento dell'oggetto array_view.
Sintassi
std::reverse_iterator<stdext::checked_array_iterator<T const>> crend() const noexcept;
Valore restituito
Iteratore inverso const al primo elemento dell'oggetto array_view.
funzione array_view::d ata
Restituisce un puntatore ai dati sottostanti visualizzati dall'oggetto array_view.
Sintassi
T const* data() const noexcept;
T* data() noexcept;
Valore restituito
Puntatore ai dati sottostanti visualizzati dall'oggetto array_view.
funzione array_view::empty
Restituisce un valore che indica se l'oggetto array_view è vuoto (è una visualizzazione su zero elementi).
Sintassi
bool empty() const noexcept;
Valore restituito
true
se l'oggetto array_view è vuoto (è una visualizzazione su zero elementi), in caso contrario false
.
funzione array_view::end
Restituisce un iteratore a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view. Vedere Iteratori.
Sintassi
stdext::checked_array_iterator<T const> end() const noexcept;
stdext::checked_array_iterator<T> end() noexcept;
Valore restituito
Iteratore a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
funzione array_view::front
Restituisce un riferimento al primo elemento dell'oggetto array_view.
Sintassi
T const& front() const noexcept;
T& front() noexcept;
Valore restituito
Riferimento al primo elemento dell'oggetto array_view.
array_view::operator[] (operatore pedice)
Restituisce un riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view.
Sintassi
T const& operator[](uint32_t const pos) const noexcept;
T& operator[](uint32_t const pos) noexcept;
Parametri
pos
Una posizione dell'elemento in base zero o un indice.
Valore restituito
Riferimento all'elemento in corrispondenza della posizione specificata all'interno dell'oggetto array_view.
funzione array_view::rbegin
Restituisce un iteratore inverso a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
Sintassi
std::reverse_iterator<stdext::checked_array_iterator<T const>> rbegin() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rbegin() noexcept;
Valore restituito
Iteratore inverso a uno oltre la fine di (uno oltre l'ultimo elemento in) dell'oggetto array_view.
funzione array_view::rend
Restituisce un iteratore inverso al primo elemento dell'oggetto array_view.
Sintassi
std::reverse_iterator<stdext::checked_array_iterator<T const>> rend() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rend() noexcept;
Valore restituito
Iteratore inverso al primo elemento dell'oggetto array_view.
funzione array_view::size
Restituisce il numero di elementi nell'oggetto array_view.
Sintassi
uint32_t size() const noexcept;
Valore restituito
Oggetto uint32_t
contenente il numero di elementi nell'oggetto array_view.
operator!= (operatore di disuguaglianza)
Restituisce un valore che indica se i due parametri non sono uguali tra loro.
Sintassi
template <typename T> bool operator!=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se i due parametri non sono uguali l'uno all'altro; in caso contrario, false
.
operatore< (operatore minore di)
Restituisce un valore che indica se il primo parametro è minore del secondo parametro.
Sintassi
template <typename T> bool operator<(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se il primo parametro è minore del secondo parametro; in caso contrario, false
.
operator<= (operatore minore o uguale a)
Restituisce un valore che indica se il primo parametro è minore o uguale al secondo parametro.
Sintassi
template <typename T> bool operator<=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se il primo parametro è minore o uguale al secondo parametro, in caso contrario false
.
operator== (operatore di uguaglianza)
Restituisce un valore che indica se i due parametri sono uguali l'uno all'altro.
Sintassi
template <typename T> bool operator==(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se i due parametri sono uguali l'uno all'altro; in caso contrario, false
.
operatore> (operatore maggiore di)
Restituisce un valore che indica se il primo parametro è maggiore del secondo parametro.
Sintassi
template <typename T> bool operator>(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se il primo parametro è maggiore del secondo parametro; in caso contrario, false
.
operator>= (operatore maggiore o uguale a)
Restituisce un valore che indica se il primo parametro è maggiore o uguale al secondo parametro.
Sintassi
template <typename T> bool operator>=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Parametri
left
right
Valore array_view da confrontare con l'altro parametro.
Valore restituito
true
se il primo parametro è maggiore o uguale al secondo parametro, in caso contrario false
.