命名空间
变体
操作

operator-(ranges::elements_view::sentinel)

来自 cppreference.cn
< cpp‎ | ranges‎ | elements view‎ | sentinel
 
 
范围库 (Ranges library)
范围适配器 (Range adaptors)
 
 
template< bool OtherConst >

    requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                     ranges::iterator_t</*maybe-const*/<OtherConst, V>>>
friend constexpr ranges::range_difference_t</*maybe-const*/<OtherConst, V>>

    operator-( const /*iterator*/<OtherConst>& x, const /*sentinel*/& y );
(1) (C++20 起)
template< bool OtherConst >

    requires std::sized_sentinel_for<ranges::sentinel_t<Base>,
                                     ranges::iterator_t</*maybe-const*/<OtherConst, V>>>
friend constexpr ranges::range_difference_t</*maybe-const*/<OtherConst, V>>

    operator-( const /*sentinel*/& y, const /*iterator*/<OtherConst>& x );
(2) (C++20 起)

计算 x 的底层迭代器与 y 的底层哨兵之间的距离。

这些函数模板对普通的非限定查找限定查找不可见,只能通过实参依赖查找elements_view::sentinel 作为实参的关联类时找到。

[编辑] 参数

x - 一个迭代器
y - 一个哨兵

[编辑] 返回值

1) x.base() - y.base()
2) y.base() - x.base()