命名空间
变体
操作

operator-(ranges::transform_view::sentinel)

来自 cppreference.com
 
 
范围库
范围适配器
 
 
friend constexpr ranges::range_difference_t<Base>

    operator-( const /*iterator*/<Const>& x, const /*sentinel*/& y )
        requires std::sized_sentinel_for<ranges::sentinel_t<Base>,

                                         ranges::iterator_t<Base>>;
(1) (自 C++20)
friend constexpr ranges::range_difference_t<Base>

    operator-( const /*sentinel*/& y, const /*iterator*/<Const>& x )
        requires std::sized_sentinel_for<ranges::sentinel_t<Base>,

                                         ranges::iterator_t<Base>>;
(2) (自 C++20)

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

这些函数对普通的 非限定限定查找 不可見,并且只能通过 参数相关查找 找到,当 transform_view::sentinel<Const> 是参数的关联类时。

[编辑] 参数

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

[编辑] 返回值

current_ 表示底层迭代器,end_ 表示底层哨兵。

1) x.current_ - y.end_
2) y.end_ - x.current_