Difference between revisions of "cpp/ranges/chunk view/outer iterator/operator-"
From cppreference.com
< cpp | ranges | chunk view | outer iterator
m (fix.) |
m (fmt.) |
||
(One intermediate revision by one user not shown) | |||
Line 1: | Line 1: | ||
− | {{title|operator-{{ | + | {{title|operator-{{|(ranges::chunk_view::''outer-iterator'')}}}} |
{{cpp/ranges/chunk_view/navbar}} | {{cpp/ranges/chunk_view/navbar}} | ||
Line 31: | Line 31: | ||
@2@ Equivalent to: {{c|1=return -(s - i);}}. | @2@ Equivalent to: {{c|1=return -(s - i);}}. | ||
− | {{cpp/hidden friend|std::ranges::chunk_view::''outer-iterator''|plural=yes}} | + | {{cpp/hidden friend|std::ranges::chunk_view::''outer-iterator''|plural=yes}} |
===Parameters=== | ===Parameters=== | ||
Line 40: | Line 40: | ||
===Return value=== | ===Return value=== | ||
− | + | distance between given iterator and sentinel. | |
===Example=== | ===Example=== |
Latest revision as of 22:16, 20 June 2024
friend constexpr difference_type operator-( std::default_sentinel_t s, const /*outer-iterator*/& i ) |
(1) | (since C++23) |
friend constexpr difference_type operator-( const /*outer-iterator*/& i, std::default_sentinel_t s ) |
(2) | (since C++23) |
Calculates the distance (in number of chunks) between the iterator and sentinel.
Let parent_
be the underlying pointer to enclosing chunk_view
.
1) Equivalent to:
const auto dist = ranges::end(i.parent_->base_) - *i.parent_->current_; if (dist < i.parent_->remainder_) return dist == 0 ? 0 : 1; return /*div-ceil*/(dist - i.parent_->remainder_, i.parent_->n_) + 1;
2) Equivalent to: return -(s - i);.
These functions are not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when std::ranges::chunk_view::outer-iterator
is an associated class of the arguments.
Contents |
[edit] Parameters
i | - | the iterator |
s | - | the sentinel |
[edit] Return value
The distance between given iterator and sentinel.
[edit] Example
This section is incomplete Reason: no example |
[edit] See also
(C++23) |
increments the iterator (public member function) |