C++ 参考手册

位置:首页 > C++ 参考手册 >迭代器库 >std::move_iterator > operator-(std::move_iterator<Iter>, std::move_sentinel)

template<std::sized_sentinel_for<Iter> S>

  friend constexpr std::iter_difference_t<Iter>

    operator-(const std::move_sentinel<S>& s, const move_iterator& i);
(1) (C++20 起)
template<std::sized_sentinel_for<Iter> S>

  friend constexpr std::iter_difference_t<Iter>

    operator-(const move_iterator& i, const std::move_sentinel<S>& s);
(2) (C++20 起)

返回 move_iteratormove_sentinel 间的距离。

这些函数模板对通常无限定有限定查找不可见,而只能在 std::move_iterator<Iter> 为参数的关联类时由参数依赖查找找到。

参数

i - std::move_iterator<Iter>
s - std::move_sentinel<S> ,其中 S 实现 std::sized_sentinel_for<Iter>

返回值

1) s.base() - i.base()
2) i.base() - s.base()

参阅

计算两个迭代器适配器间的距离
(函数模板)