operator+,-(ranges::stride_view::iterator)
来自cppreference.com
| |
(1) | (C++23 起) |
| |
(2) | (C++23 起) |
| |
(3) | (C++23 起) |
| |
(4) | (C++23 起) |
| |
(5) | (C++23 起) |
| |
(6) | (C++23 起) |
增加或减少迭代器。
令 current_,end_,stride_,和missing_ 为迭代器的数据成员。
1,2) 等价于
auto r = i; r += n; return r;。3) 等价于
auto r = i; r -= n; return r;。4) 令
N 为 x.current_ - y.current_。
- 如果
Base实现 forward_range,返回(N + x.missing_ - y.missing_) / x.stride_。 - 如果
N < 0,返回-/*div-ceil*/(-N, x.stride_)。 - 否则返回
/*div-ceil*/(N, x.stride_)。
5) 等价于
return /*div-ceil*/(x.end_ - x.current_, x.stride_);。6) 等价于
return -(s - x);。这些函数对常规的无限定或有限定查找不可见,而只能在 stride_view::iterator<Const> 为实参的关联类时由实参依赖查找找到。
参数
| x, y, i | - | 迭代器 |
| s | - | 哨位 |
返回值
1,2) 增加后的迭代器
3) 减少后的迭代器
4) 给定迭代器之间的距离
5,6) 给定迭代器与哨位之间的距离
示例
| 本节未完成 原因:暂无示例 |
参阅
| 推进或减小底层迭代器 (公开成员函数) |