Namespaces
Variants
Actions

std::ranges::elements_view<V,N>::elements_view

From cppreference.com
< cpp‎ | ranges‎ | elements view
 
 
Ranges library
 
std::ranges::elements_view
elements_view::elements_view
 
elements_view() requires std::default_initializable <V> = default;
(1) (since C++20)
constexpr explicit elements_view( V base );
(2) (since C++20)

Constructs an elements_view.

1) Default constructor. Value-initializes the underlying view base_. After construction, base() returns a copy of V().
2) Initializes the underlying view base_ with std::move(base).

[edit] Parameters

base - the underlying view

[edit] Example

Run this code
#include <array>
#include <iostream>
#include <ranges>
#include <tuple>
 
void println(auto const& v)
{
 for (auto const& e : v)
 std::cout << e << ' ';
 std::cout << '\n';
}
 
int main()
{
 using namespace std::literals;
 
 const std::array <std::tuple <int, char, std::string >, 2> vt
 {
 std::tuple {1, 'A', "α"s},
 std::tuple {2, 'B', "β"s},
 };
 
 [[maybe_unused]]
 auto empty = std::views::elements <0>;
 
 println(std::views::elements <0>(vt));
 println(std::views::elements <1>(vt));
 println(std::views::elements <2>(vt));
}

Output:

1 2
A B
α β
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/ranges/elements_view/elements_view&oldid=173586"

AltStyle によって変換されたページ (->オリジナル) /