命名空间
变体
操作

operator-(std::move_iterator<Iter>, std::move_sentinel)

来自 cppreference.com
 
 
迭代器库
迭代器概念
迭代器原语
算法概念和实用程序
间接可调用概念
常见算法需求
(C++20)
(C++20)
(C++20)
实用程序
(C++20)
迭代器适配器
范围访问
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
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()

[编辑] 示例

[编辑] 参见

(C++11)
计算两个迭代器适配器之间的距离
(函数模板) [编辑]