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 >

friendconstexprstd::iter_difference_t<Iter>

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

friendconstexprstd::iter_difference_t<Iter>

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

返回 move_iteratormove_sentinel 间的距离。

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

[编辑]参数

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

[编辑]返回值

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

[编辑]参阅

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