c ++ 2a工作草案具有std::ranges::subrange
实用程序,该实用程序使范围和视图能够解包到迭代器和标记中。例如:
std::optional<int> foo(std::vector<int> const &v, std::size_t const n)
{
auto [it, e] = std::ranges::subrange(v | std::ranges::view::drop(n));
it = std::ranges::find_if(it, e, [](auto const i) { return i % 2 == 0; });
if (it == e)
return {};
return {*it};
}
range-v3中有类似的功能吗?