modèle de struct winrt ::array_view (C++/WinRT)
Vue, ou étendue, d’une série contiguë de valeurs. Pour plus d’exemples et d’informations sur winrt ::array_view, consultez types de données C++ Standard et C++/WinRT.
Syntaxe
template <typename T>
struct array_view
Paramètres de modèle
typename T
Type des valeurs (éléments) que les vues array_view ou s’étendent.
Exigences
Kit de développement logiciel (SDK) minimum pris en charge : SDK Windows version 10.0.17134.0 (Windows 10, version 1803)
Namespace : winrt
en-tête : %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (inclus par défaut)
Alias de type membre
Nom de l’alias | Type |
---|---|
array_view ::value_type | Synonyme du paramètre de modèle typename T . |
array_view ::size_type | Synonyme de uint32_t. |
array_view ::reference | Synonyme de array_view ::value_type&. |
array_view ::const_reference | Synonyme de array_view ::value_type const&. |
array_view ::p ointer | Synonyme de array_view ::value_type*. |
array_view ::const_pointer | Synonyme de array_view ::value_type const*. |
array_view ::iterator | Synonyme d’un itérateur de tableau défini par l’implémentation de array_view ::value_type. |
array_view ::const_iterator | Synonyme d’itérateur de tableau défini par l’implémentation de array_view ::value_type const. |
array_view ::reverse_iterator | Synonyme de std ::reverse_iterator<array_view ::iterator>. |
array_view ::const_reverse_iterator | Synonyme de std ::reverse_iterator<array_view ::const_iterator>. |
Constructeurs
Constructeur | Description |
---|---|
array_view ::array_view constructeur | Initialise une nouvelle instance du struct array_view en tant qu’affichage (et non une copie) des données d’entrée. |
Fonctions membres
Fonction | Description |
---|---|
array_view ::at, fonction | Retourne une référence à l’élément à la position spécifiée dans l’objet array_view. |
array_view ::back, fonction | Retourne une référence au dernier élément de l’objet array_view. |
array_view ::begin, fonction | Retourne un itérateur au premier élément de l’objet array_view. |
array_view ::cbegin, fonction | Retourne un itérateur const au premier élément de l’objet array_view. |
array_view ::cend, fonction | Retourne un itérateur const à un au-delà de la fin (un au-delà du dernier élément dans) l’objet array_view. |
array_view ::crbegin, fonction | Retourne un itérateur inverse const à un au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view. |
array_view ::crend, fonction | Retourne un itérateur inverse const au premier élément de l’objet array_view. |
fonction array_view ::d ata | Retourne un pointeur vers les données sous-jacentes consultées par l’objet array_view. |
array_view ::empty, fonction | Retourne une valeur indiquant si l’objet array_view est vide (est une vue sur zéro élément). |
array_view ::end, fonction | Retourne un itérateur à un au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view. |
array_view ::front, fonction | Retourne une référence au premier élément de l’objet array_view. |
array_view ::rbegin, fonction | Retourne un itérateur inverse vers un itérateur au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view. |
de la fonction |
Retourne un itérateur inverse au premier élément de l’objet array_view. |
array_view ::size, fonction | Retourne le nombre d’éléments dans l’objet array_view. |
Opérateurs membres
Opérateur | Description |
---|---|
|
Retourne une référence à l’élément à la position spécifiée dans l’objet array_view. |
Opérateurs gratuits
Opérateur | Description |
---|---|
operator != (opérateur d’inégalité) | Retourne une valeur indiquant si les deux paramètres sont inégaux les uns aux autres. |
opérateur< (opérateur inférieur à) | Retourne une valeur indiquant si le premier paramètre est inférieur au deuxième paramètre. |
opérateur<= (opérateur inférieur ou égal à) | Retourne une valeur indiquant si le premier paramètre est inférieur ou égal au deuxième paramètre. |
operator== (opérateur d’égalité) | Retourne une valeur indiquant si les deux paramètres sont égaux les uns aux autres. |
opérateur> (opérateur supérieur à) | Retourne une valeur indiquant si le premier paramètre est supérieur au deuxième paramètre. |
opérateur>= (opérateur supérieur ou égal à) | Retourne une valeur indiquant si le premier paramètre est supérieur ou égal au deuxième paramètre. |
Itérateurs
Une array_view est une plage et cette plage est définie par les fonctions membres array_view ::begin et array_view ::end membres, chacune qui retourne un itérateur (voir également array_view ::cbegin et array_view ::cend). Pour cette raison, vous pouvez énumérer les caractères d’un objet array_view avec une instruction for
basée sur une plage ou avec la fonction de modèle 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 << " "; });
}
constructeur array_view ::array_view
Initialise une nouvelle instance du struct array_view en tant qu’affichage (et non une copie) des données d’entrée.
Syntaxe
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;
Paramètres de modèle
typename C
Type des valeurs (éléments) dans les données d’entrée.
uint32_t N
Nombre de valeurs (éléments) dans les données d’entrée.
Paramètres
rawArrayValue
Valeur de tableau brute qui initialise l’objet array_view.
initializerListValue
Valeur de liste d’initialiseurs qui initialise l’objet array_view.
vectorValue
Valeur de std ::vector qui initialise l’objet array_view.
first
last
pointeurs vers des valeurs avec lesquelles initialiser l’objet array_view. Si first
est égal à last
, l’objet array_view est vide.
Exemple
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, fonction
Retourne une référence à l’élément à la position spécifiée dans l’objet array_view.
Syntaxe
T& at(uint32_t const pos);
T const& at(uint32_t const pos) const;
Paramètres
pos
une position d’élément de base zéro ou un index.
Valeur de retour
Référence à l’élément à la position spécifiée dans l’objet array_view.
array_view ::back, fonction
Retourne une référence au dernier élément de l’objet array_view.
Syntaxe
T const& back() const noexcept;
T& back() noexcept;
Valeur de retour
Référence au dernier élément de l’objet array_view.
array_view ::begin, fonction
Retourne un itérateur au premier élément de l’objet array_view. Consultez itérateurs.
Syntaxe
stdext::checked_array_iterator<T const> begin() const noexcept;
stdext::checked_array_iterator<T> begin() noexcept;
Valeur de retour
Itérateur vers le premier élément de l’objet array_view.
array_view ::cbegin, fonction
Retourne un itérateur const au premier élément de l’objet array_view. Consultez itérateurs.
Syntaxe
stdext::checked_array_iterator<T const> cbegin() const noexcept;
Valeur de retour
Itérateur const au premier élément de l’objet array_view.
array_view ::cend, fonction
Retourne un itérateur const à un au-delà de la fin (un au-delà du dernier élément dans) l’objet array_view. Consultez itérateurs.
Syntaxe
stdext::checked_array_iterator<T const> cend() const noexcept;
Valeur de retour
Itérateur const à un au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view.
array_view ::crbegin, fonction
Retourne un itérateur inverse const à un au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view.
Syntaxe
std::reverse_iterator<stdext::checked_array_iterator<T const>> crbegin() const noexcept;
Valeur de retour
Itérateur inverse const à un au-delà de la fin (un au-delà du dernier élément dans) de l’objet array_view.
array_view ::crend, fonction
Retourne un itérateur inverse const au premier élément de l’objet array_view.
Syntaxe
std::reverse_iterator<stdext::checked_array_iterator<T const>> crend() const noexcept;
Valeur de retour
Itérateur inverse const au premier élément de l’objet array_view.
fonction array_view ::d ata
Retourne un pointeur vers les données sous-jacentes consultées par l’objet array_view.
Syntaxe
T const* data() const noexcept;
T* data() noexcept;
Valeur de retour
Pointeur vers les données sous-jacentes consultées par l’objet array_view.
array_view ::empty, fonction
Retourne une valeur indiquant si l’objet array_view est vide (est une vue sur zéro élément).
Syntaxe
bool empty() const noexcept;
Valeur de retour
true
si l’objet array_view est vide (est une vue sur aucun élément), sinon false
.
array_view ::end, fonction
Retourne un itérateur à un au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view. Consultez itérateurs.
Syntaxe
stdext::checked_array_iterator<T const> end() const noexcept;
stdext::checked_array_iterator<T> end() noexcept;
Valeur de retour
Itérateur vers un itérateur au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view.
array_view ::front, fonction
Retourne une référence au premier élément de l’objet array_view.
Syntaxe
T const& front() const noexcept;
T& front() noexcept;
Valeur de retour
Référence au premier élément de l’objet array_view.
array_view ::operator[] (opérateur d’indice)
Retourne une référence à l’élément à la position spécifiée dans l’objet array_view.
Syntaxe
T const& operator[](uint32_t const pos) const noexcept;
T& operator[](uint32_t const pos) noexcept;
Paramètres
pos
une position d’élément de base zéro ou un index.
Valeur de retour
Référence à l’élément à la position spécifiée dans l’objet array_view.
array_view ::rbegin, fonction
Retourne un itérateur inverse vers un itérateur au-delà de la fin de (un au-delà du dernier élément dans) de l’objet array_view.
Syntaxe
std::reverse_iterator<stdext::checked_array_iterator<T const>> rbegin() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rbegin() noexcept;
Valeur de retour
Itérateur inverse vers l’un au-delà de la fin (un au-delà du dernier élément dans) l’objet array_view.
array_view ::rend, fonction
Retourne un itérateur inverse au premier élément de l’objet array_view.
Syntaxe
std::reverse_iterator<stdext::checked_array_iterator<T const>> rend() const noexcept;
std::reverse_iterator<stdext::checked_array_iterator<T>> rend() noexcept;
Valeur de retour
Itérateur inverse au premier élément de l’objet array_view.
array_view ::size, fonction
Retourne le nombre d’éléments dans l’objet array_view.
Syntaxe
uint32_t size() const noexcept;
Valeur de retour
Un uint32_t
contenant le nombre d’éléments dans l’objet array_view.
operator != (opérateur d’inégalité)
Retourne une valeur indiquant si les deux paramètres sont inégaux les uns aux autres.
Syntaxe
template <typename T> bool operator!=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si les deux paramètres sont inégaux les uns aux autres, sinon false
.
opérateur< (opérateur inférieur à)
Retourne une valeur indiquant si le premier paramètre est inférieur au deuxième paramètre.
Syntaxe
template <typename T> bool operator<(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si le premier paramètre est inférieur au deuxième paramètre, sinon false
.
opérateur<= (opérateur inférieur ou égal à)
Retourne une valeur indiquant si le premier paramètre est inférieur ou égal au deuxième paramètre.
Syntaxe
template <typename T> bool operator<=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si le premier paramètre est inférieur ou égal au deuxième paramètre, sinon false
.
operator== (opérateur d’égalité)
Retourne une valeur indiquant si les deux paramètres sont égaux les uns aux autres.
Syntaxe
template <typename T> bool operator==(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si les deux paramètres sont égaux les uns aux autres, sinon false
.
opérateur> (opérateur supérieur à)
Retourne une valeur indiquant si le premier paramètre est supérieur au deuxième paramètre.
Syntaxe
template <typename T> bool operator>(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si le premier paramètre est supérieur au deuxième paramètre, sinon false
.
opérateur>= (opérateur supérieur ou égal à)
Retourne une valeur indiquant si le premier paramètre est supérieur ou égal au deuxième paramètre.
Syntaxe
template <typename T> bool operator>=(winrt::array_view<T> const& left, winrt::array_view<T> const& right) noexcept;
Paramètres
left
right
Valeur de array_view à comparer avec l’autre paramètre.
Valeur de retour
true
si le premier paramètre est supérieur ou égal au deuxième paramètre, sinon false
.