std::ranges::join_view<V>::begin
From cppreference.com
C++
Feature test macros (C++20)
Concepts library (C++20)
Metaprogramming library (C++11)
Ranges library (C++20)
Filesystem library (C++17)
Concurrency support library (C++11)
Execution control library (C++26)
Ranges library
(C++23)(C++23)
(C++26)(C++26)
(C++23)(C++23)
(C++26)(C++26)
(C++26)(C++26)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)
(C++23)(C++23)
(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
(C++23)(C++23)
std::ranges::join_view
join_view::begin
constexpr auto begin();
(1)
(since C++20)
constexpr auto begin() const
(2)
(since C++20)
requires ranges::input_range <const V> &&
Returns an iterator to the first element of the join_view
. Given base_
is the underlying view,
1) Equivalent to
- return /*iterator*/<true>{*this, ranges::begin (base_)}; if /*simple-view*/<V> is satisfied and ranges::range_reference_t <V> is reference type. Otherwise,
- return /*iterator*/<false>{*this, ranges::begin (base_)};.
2) Equivalent to return /*iterator*/<true>{*this, ranges::begin (base_)};.
Contents
[edit] Parameters
(none)
[edit] Return value
Iterator to the first element.
[edit] Notes
When ranges::range_reference_t <V> is not a reference type, that is, deferencing an iterator of V
returns a prvalue temporary, the join_view
is only an input_range
, in which case only single-pass iteration is supported, and repeated calls to begin()
may not give meaningful results.
[edit] Example
This section is incomplete
Reason: no example
Reason: no example