operator-(ranges::chunk_view::外部迭代器)
来自 zh.cppreference.net
friend constexpr difference_type operator-( std::default_sentinel_t s,
const /*outer-iterator*/& i )
requires ranges::sized_sentinel_for<ranges::sentinel_t<V>,
ranges::iterator_t<V>>;
|
(1) | (自 C++23 起) |
friend constexpr difference_type operator-( const /*outer-iterator*/& i,
std::default_sentinel_t s )
requires ranges::sized_sentinel_for<ranges::sentinel_t<V>,
ranges::iterator_t<V>>;
|
(2) | (自 C++23 起) |
设parent_为指向封闭chunk_view的底层指针。
1)等价于:
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)等价于:
return -(s - i);。这些函数对普通的非限定或限定查找不可见,只能通过实参依赖查找在std::ranges::chunk_view::outer-iterator是实参的关联类时找到。
参数
| i | - | 迭代器 |
| s | - | 哨兵 |
返回值
给定迭代器与哨兵之间的距离。
示例
|
本节内容不完整
原因:缺少示例 |
参见
|
(C++23)
|
递增迭代器
(公开成员函数) |