winrt::array_view-Strukturvorlage (C++/WinRT)

Eine Ansicht oder Spanne einer zusammenhängenden Reihe von Werten. Weitere Beispiele und Informationen zu winrt::array_view finden Sie unter C++-Standarddatentypen und C++/WinRT.

Syntax

template <typename T>
struct array_view

Vorlagenparameter

typename T Der Typ der Werte (Elemente), die die array_view sich anzeigt oder umfasst.

Anforderungen

Unterstütztes MINDEST-SDK: Windows SDK Version 10.0.17134.0 (Windows 10, Version 1803)

Namespace: winrt

Header: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (standardmäßig enthalten)

Membertypaliasen

Aliasname Typ
array_view::value_type Ein Synonym für den typename T Vorlagenparameter.
array_view::size_type Ein Synonym für uint32_t.
array_view::reference Ein Synonym für array_view::value_type&.
array_view::const_reference Ein Synonym für array_view::value_type const&.
array_view::p ointer Ein Synonym für array_view::value_type*.
array_view::const_pointer Ein Synonym für array_view::value_type const*.
array_view::iterator Ein Synonym für einen implementierungsdefinierten Arrayiterator von array_view::value_type.
array_view::const_iterator Ein Synonym für einen implementierungsdefinierten Arrayiterator von array_view::value_type const.
array_view::reverse_iterator Ein Synonym für std::reverse_iterator<array_view::iterator>.
array_view::const_reverse_iterator Ein Synonym für std::reverse_iterator<array_view::const_iterator>.

Konstruktoren

Konstruktor BESCHREIBUNG
array_view::array_view-Konstruktor Initialisiert eine neue instance der array_view-Struktur als Ansicht (und keine Kopie) der Eingabedaten.

Memberfunktionen

Funktion Beschreibung
array_view::at-Funktion Gibt einen Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts zurück.
array_view::back-Funktion Gibt einen Verweis auf das letzte Element im array_view-Objekt zurück.
array_view::begin-Funktion Gibt einen Iterator für das erste Element im array_view-Objekt zurück.
array_view::cbegin-Funktion Gibt einen Const-Iterator für das erste Element im array_view-Objekt zurück.
array_view::cend-Funktion Gibt einen Const-Iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins nach dem letzten Element in).
array_view::crbegin-Funktion Gibt einen const reverse iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in).
array_view::crend-Funktion Gibt einen const reverse iterator für das erste Element im array_view-Objekt zurück.
array_view::d ata-Funktion Gibt einen Zeiger auf die zugrunde liegenden Daten zurück, die vom array_view-Objekt angezeigt werden.
array_view::empty-Funktion Gibt einen Wert zurück, der angibt, ob das array_view -Objekt leer ist (ist eine Ansicht von Null-Elementen).
array_view::end-Funktion Gibt einen Iterator auf eins zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in).
array_view::front-Funktion Gibt einen Verweis auf das erste Element im array_view-Objekt zurück.
array_view::rbegin-Funktion Gibt einen umgekehrten Iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in).
array_view::rend-Funktion Gibt einen Reverse-Iterator für das erste Element im array_view-Objekt zurück.
array_view::size-Funktion Gibt die Anzahl der Elemente im array_view-Objekt zurück.

Memberoperatoren

Operator Beschreibung
array_view::operator[] (tiefgestellter Operator) Gibt einen Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts zurück.

Kostenlose Operatoren

Operator Beschreibung
operator!= (Ungleichheitsoperator) Gibt einen Wert zurück, der angibt, ob die beiden Parameter ungleich sind.
Operator< (Kleiner-als-Operator) Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner als der zweite Parameter ist.
operator<= (kleiner-als-oder-gleich-Operator) Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner oder gleich dem zweiten Parameter ist.
operator== (Gleichheitsoperator) Gibt einen Wert zurück, der angibt, ob die beiden Parameter gleich sind.
Operator> (Größer-als-Operator) Gibt einen Wert zurück, der angibt, ob der erste Parameter größer als der zweite Parameter ist.
operator>= (größer-als-oder-gleich-operator) Gibt einen Wert zurück, der angibt, ob der erste Parameter größer oder gleich dem zweiten Parameter ist.

Iterators

Ein array_view ist ein Bereich, und dieser Bereich wird durch die Memberfunktionen array_view::begin und array_view::end definiert, von denen jede einen Iterator zurückgibt (siehe auch array_view::cbegin und array_view::cend). Aus diesem Grund können Sie die Zeichen in einem array_view -Objekt entweder mit einer bereichsbasierten for Anweisung oder mit der Vorlagenfunktion std::for_each auflisten.

#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 << " "; });
}

array_view::array_view-Konstruktor

Initialisiert eine neue instance der array_view-Struktur als Ansicht (und keine Kopie) der Eingabedaten.

Syntax

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;

Vorlagenparameter

typename C Der Typ der Werte (Elemente) in den Eingabedaten.

uint32_t N Die Anzahl der Werte (Elemente) in den Eingabedaten.

Parameter

rawArrayValue Ein unformatierter Arraywert, der das array_view -Objekt initialisiert.

arrayValue Ein std::array-Wert , der das array_view-Objekt initialisiert.

initializerListValue Ein Initialisiererlistenwert, der das array_view -Objekt initialisiert.

vectorValue Ein std::vector-Wert , der das array_view -Objekt initialisiert.

firstlast Zeiger auf Werte, mit denen das array_view -Objekt initialisiert werden soll. Wenn first gleich lastist, ist das array_view -Objekt leer.

Beispiel

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-Funktion

Gibt einen Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts zurück.

Syntax

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

Parameter

pos Eine nullbasierte Elementposition oder ein Index.

Rückgabewert

Ein Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts .

array_view::back-Funktion

Gibt einen Verweis auf das letzte Element im array_view-Objekt zurück.

Syntax

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

Rückgabewert

Ein Verweis auf das letzte Element im array_view-Objekt .

array_view::begin-Funktion

Gibt einen Iterator für das erste Element im array_view-Objekt zurück. Weitere Informationen finden Sie unter Iteratoren.

Syntax

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

Rückgabewert

Ein Iterator für das erste Element im array_view-Objekt .

array_view::cbegin-Funktion

Gibt einen Const-Iterator für das erste Element im array_view-Objekt zurück. Weitere Informationen finden Sie unter Iteratoren.

Syntax

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

Rückgabewert

Ein Const-Iterator für das erste Element im array_view-Objekt .

array_view::cend-Funktion

Gibt einen Const-Iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins nach dem letzten Element in). Weitere Informationen finden Sie unter Iteratoren.

Syntax

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

Rückgabewert

Ein Const-Iterator zu eins über das Ende (eins über das letzte Element in) des array_view-Objekts hinaus.

array_view::crbegin-Funktion

Gibt einen const reverse iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in).

Syntax

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

Rückgabewert

Ein const reverse iterator to one beyond the end of (one beyond the last element in) the array_view object.

array_view::crend-Funktion

Gibt einen const reverse iterator für das erste Element im array_view-Objekt zurück.

Syntax

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

Rückgabewert

Ein const reverse iterator to the first element in the array_view object.

array_view::d ata-Funktion

Gibt einen Zeiger auf die zugrunde liegenden Daten zurück, die vom array_view-Objekt angezeigt werden.

Syntax

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

Rückgabewert

Ein Zeiger auf die zugrunde liegenden Daten, die vom array_view-Objekt angezeigt werden.

array_view::empty-Funktion

Gibt einen Wert zurück, der angibt, ob das array_view -Objekt leer ist (ist eine Ansicht von Null-Elementen).

Syntax

bool empty() const noexcept;

Rückgabewert

true , wenn das array_view Objekt leer ist (ist eine Ansicht für Nullelemente), andernfalls false.

array_view::end-Funktion

Gibt einen Iterator auf eins zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in). Weitere Informationen finden Sie unter Iteratoren.

Syntax

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

Rückgabewert

Ein Iterator, der über das Ende des array_view -Objekts hinaus (eins über das letzte Element in) hinausgeht.

array_view::front-Funktion

Gibt einen Verweis auf das erste Element im array_view-Objekt zurück.

Syntax

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

Rückgabewert

Ein Verweis auf das erste Element im array_view-Objekt .

array_view::operator[] (tiefgestellter Operator)

Gibt einen Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts zurück.

Syntax

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

Parameter

pos Eine nullbasierte Elementposition oder ein Index.

Rückgabewert

Ein Verweis auf das Element an der angegebenen Position innerhalb des array_view-Objekts .

array_view::rbegin-Funktion

Gibt einen umgekehrten Iterator auf einen zurück, der über das Ende des array_view -Objekts hinausgeht (eins über das letzte Element in).

Syntax

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

Rückgabewert

Ein Umgekehrter Iterator zu eins über das Ende (eins über das letzte Element in) des array_view -Objekts hinaus.

array_view::rend-Funktion

Gibt einen Reverse-Iterator für das erste Element im array_view-Objekt zurück.

Syntax

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

Rückgabewert

Ein Umgekehrter Iterator zum ersten Element im array_view-Objekt .

array_view::size-Funktion

Gibt die Anzahl der Elemente im array_view-Objekt zurück.

Syntax

uint32_t size() const noexcept;

Rückgabewert

Ein uint32_t , der die Anzahl der Elemente im array_view -Objekt enthält.

operator!= (Ungleichheitsoperator)

Gibt einen Wert zurück, der angibt, ob die beiden Parameter ungleich sind.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn die beiden Parameter ungleich sind, andernfalls false.

Operator< (Kleiner-als-Operator)

Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner als der zweite Parameter ist.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn der erste Parameter kleiner als der zweite Parameter ist, andernfalls false.

operator<= (kleiner-als-oder-gleich-Operator)

Gibt einen Wert zurück, der angibt, ob der erste Parameter kleiner oder gleich dem zweiten Parameter ist.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn der erste Parameter kleiner oder gleich dem zweiten Parameter ist, andernfalls false.

operator== (Gleichheitsoperator)

Gibt einen Wert zurück, der angibt, ob die beiden Parameter gleich sind.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn die beiden Parameter gleich sind, andernfalls false.

Operator> (Größer-als-Operator)

Gibt einen Wert zurück, der angibt, ob der erste Parameter größer als der zweite Parameter ist.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn der erste Parameter größer als der zweite Parameter ist, andernfalls false.

operator>= (größer-als-oder-gleich-operator)

Gibt einen Wert zurück, der angibt, ob der erste Parameter größer oder gleich dem zweiten Parameter ist.

Syntax

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

Parameter

leftright Ein array_view Wert, der mit dem anderen Parameter verglichen werden soll.

Rückgabewert

true , wenn der erste Parameter größer oder gleich dem zweiten Parameter ist, andernfalls false.

Weitere Informationen