A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://learn.microsoft.com/en-us/uwp/cpp-ref-for-winrt/array-view below:

winrt::array_view struct template (C++/WinRT) - Windows UWP applications

A view, or span, of a contiguous series of values. For more examples and info about winrt::array_view, see Standard C++ data types and C++/WinRT.

Syntax
template <typename T>
struct array_view
Template parameters

typename T The type of the values (elements) that the array_view views, or spans.

Requirements

Minimum supported SDK: Windows SDK version 10.0.17134.0 (Windows 10, version 1803)

Namespace: winrt

Header: %WindowsSdkDir%Include<WindowsTargetPlatformVersion>\cppwinrt\winrt\base.h (included by default)

Member type aliases Alias name Type array_view::value_type A synonym for the typename T template parameter. array_view::size_type A synonym for uint32_t. array_view::reference A synonym for array_view::value_type&. array_view::const_reference A synonym for array_view::value_type const&. array_view::pointer A synonym for array_view::value_type*. array_view::const_pointer A synonym for array_view::value_type const*. array_view::iterator A synonym for an implementation-defined array iterator of array_view::value_type. array_view::const_iterator A synonym for an implementation-defined array iterator of array_view::value_type const. array_view::reverse_iterator A synonym for std::reverse_iterator<array_view::iterator>. array_view::const_reverse_iterator A synonym for std::reverse_iterator<array_view::const_iterator>. Constructors Member functions Member operators Free operators Iterators

An array_view is a range, and that range is defined by the array_view::begin and array_view::end member functions, each of which returns an iterator (also see array_view::cbegin and array_view::cend). Because of this, you can enumerate the characters in an array_view object with either a range-based for statement, or with the std::for_each template function.

#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 constructor

Initializes a new instance of the array_view struct as a view over (and not a copy of) the input data.

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;
Template parameters

typename C The type of the values (elements) in the input data.

uint32_t N The number of values (elements) in the input data.

Parameters

rawArrayValue A raw array value that initializes the array_view object.

arrayValue A std::array value that initializes the array_view object.

initializerListValue An initializer list value that initializes the array_view object.

vectorValue A std::vector value that initializes the array_view object.

first last Pointers to values with which to initialize the array_view object. If first equals last, then the array_view object is empty.

Example
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 function

Returns a reference to the element at the specified position within the array_view object.

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

pos A zero-based element position, or index.

Return value

A reference to the element at the specified position within the array_view object.

array_view::back function

Returns a reference to the last element in the array_view object.

Syntax
T const& back() const noexcept;
T& back() noexcept;
Return value

A reference to the last element in the array_view object.

array_view::begin function

Returns an iterator to the first element in the array_view object. See Iterators.

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

An iterator to the first element in the array_view object.

array_view::cbegin function

Returns a const iterator to the first element in the array_view object. See Iterators.

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

A const iterator to the first element in the array_view object.

array_view::cend function

Returns a const iterator to one beyond the end of (one beyond the last element in) the array_view object. See Iterators.

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

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

array_view::crbegin function

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

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

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

array_view::crend function

Returns a const reverse iterator to the first element in the array_view object.

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

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

array_view::data function

Returns a pointer to the underlying data being viewed by the array_view object.

Syntax
T const* data() const noexcept;
T* data() noexcept;
Return value

A pointer to the underlying data being viewed by the array_view object.

array_view::empty function

Returns a value indicating whether the array_view object is empty (is a view on zero elements).

Syntax
bool empty() const noexcept;
Return value

true if the array_view object is empty (is a view on zero elements), otherwise false.

array_view::end function

Returns an iterator to one beyond the end of (one beyond the last element in) the array_view object. See Iterators.

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

An iterator to one beyond the end of (one beyond the last element in) the array_view object.

array_view::front function

Returns a reference to the first element in the array_view object.

Syntax
T const& front() const noexcept;
T& front() noexcept;
Return value

A reference to the first element in the array_view object.

array_view::operator[] (subscript operator)

Returns a reference to the element at the specified position within the array_view object.

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

pos A zero-based element position, or index.

Return value

A reference to the element at the specified position within the array_view object.

array_view::rbegin function

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

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

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

array_view::rend function

Returns a reverse iterator to the first element in the array_view object.

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

A reverse iterator to the first element in the array_view object.

array_view::size function

Returns the number of elements in the array_view object.

Syntax
uint32_t size() const noexcept;
Return value

A uint32_t containing the number of elements in the array_view object.

operator!= (inequality operator)

Returns a value indicating whether the two parameters are unequal to one another.

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

left right An array_view value to compare with the other parameter.

Return value

true if the two parameters are unequal to one another, otherwise false.

operator< (less-than operator)

Returns a value indicating whether the first parameter is less than the second parameter.

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

left right An array_view value to compare with the other parameter.

Return value

true if the first parameter is less than the second parameter, otherwise false.

operator<= (less-than-or-equal-to operator)

Returns a value indicating whether the first parameter is less than or equal to the second parameter.

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

left right An array_view value to compare with the other parameter.

Return value

true if the first parameter is less than or equal to the second parameter, otherwise false.

operator== (equality operator)

Returns a value indicating whether the two parameters are equal to one another.

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

left right An array_view value to compare with the other parameter.

Return value

true if the two parameters are equal to one another, otherwise false.

operator> (greater-than operator)

Returns a value indicating whether the first parameter is greater than the second parameter.

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

left right An array_view value to compare with the other parameter.

Return value

true if the first parameter is greater than the second parameter, otherwise false.

operator>= (greater-than-or-equal-to operator)

Returns a value indicating whether the first parameter is greater than or equal to the second parameter.

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

left right An array_view value to compare with the other parameter.

Return value

true if the first parameter is greater than or equal to the second parameter, otherwise false.

See also

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4