std::ranges::chunk_by_view<V,Pred>::find_next, std::ranges::chunk_by_view<V,Pred>::find_prev
来自cppreference.com
std::ranges::chunk_by_view::next
| |
(C++23 起) (仅用于阐述*) |
|
查找下一个区块。
令
base_ 和
pred_ 为 chunk_by_view 的适当的底层数据成员。
等价于:
return ranges::next
(
ranges::adjacent_find
(
current, ranges::end(base_), std::not_fn(std::ref(*pred_))
),
1, ranges::end(base_)
);
如果在调用该函数前 pred_.has_value() 是 false,则其行为未定义。
在以下非静态成员函数中使用:
- ranges::chunk_by_view
operator++
参数
| current | - | 指向所适配视图中的当前元素的迭代器 |
返回值
指向下一个区块的迭代器,如上所述。
std::ranges::chunk_by_view::prev
| |
(C++23 起) (仅用于阐述*) |
|
查找前一个区块。
令
base_ 和
pred_ 为 chunk_by_view 的适当的底层数据成员。
返回范围 [ranges::begin(base_), current) 内的迭代器 i,条件如下:
ranges::adjacent_find(i, current, std::not_fn(std::ref(*pred_)))等于current,并且- 如果
i不等于ranges::begin(base_),那么bool(std::invoke(*pred_, *ranges::prev(i), *i))是false。
如果在调用该函数前 current == ranges::begin(base_) 或者 pred_.has_value() != true,则其行为未定义。
在以下非静态成员函数中使用:
- ranges::chunk_by_view
operator--
参数
| current | - | 指向所适配视图中的当前元素的迭代器 |
返回值
指向前一个区块的迭代器,如上所述。