std::ranges::ref_view
| Defined in header  <ranges> | ||
| template<ranges::range R>     requires std::is_object_v<R> | (since C++20) | |
ref_view is a view of the elements of some other range. It wraps a reference to that range.
Helper template
| template<class T> inline constexpr bool enable_borrowed_range<ranges::ref_view<T>> = true; | ||
This specialization of std::ranges::enable_borrowed_range makes ref_view satisfy borrowed_range.
Data members
std::ranges::ref_view::r_
| R* r_ = nullptr; /* exposition-only */ | ||
pointer to the referenced range
Member functions
std::ranges::ref_view::ref_view
| constexpr ref_view() noexcept = default; | (1) | |
| template<__NotSameAs<ref_view> T>     requires std::convertible_to<T, R&> && requires { _FUN(std::declval<T>()); } | (2) | |
Names __NotSameAs and _FUN are exposition-only. __NotSameAs<T, U> is satisfied if and only if !std::same_as<std::remove_cvref_t<T>, std::remove_cvref_t<U>>. The function _FUN are declared as void _FUN(R&); void _FUN(R&&) = delete;.
Parameters
| t | - | range to reference | 
std::ranges::ref_view::base
| constexpr R& base() const; | ||
Equivalent to return *r_;
std::ranges::ref_view::begin
| constexpr ranges::iterator_t<R> begin() const; | ||
Equivalent to return ranges::begin(*r_);
std::ranges::ref_view::end
| constexpr ranges::sentinel_t<R> end() const; | ||
Equivalent to return ranges::end(*r_);
std::ranges::ref_view::empty
| constexpr bool empty() const requires requires { ranges::empty(*r_); }; | ||
Equivalent to return ranges::empty(*r_);
std::ranges::ref_view::size
| constexpr auto size() const     requires ranges::sized_range<R> | ||
std::ranges::ref_view::data
| constexpr auto data() const     requires ranges::contiguous_range<R> | ||
Deduction guides
| template<class R> ref_view(R&) -> ref_view<R>; | ||
Example
| This section is incomplete Reason: no example | 
See also
| (C++11) | CopyConstructible and CopyAssignable reference wrapper (class template) | 
| a view that includes all elements of a range (alias template) (range adaptor object) |