std::ranges::subrange<I,S,K>::prev

来自cppreference.com
< cpp‎ | ranges‎ | subrange
 
 
 
std::ranges::subrange
成员函数
观察器
迭代器操作
subrange::prev
(C++20)
推导指引
非成员函数
(C++20)
辅助类型
(C++20)
 
[[nodiscard]] constexpr subrange prev( std::iter_difference_t<I> n = 1 ) const
    requires std::bidirectional_iterator<I>;
(C++20 起)

获得在 n >= 0n < 0 时分别为迭代器相对于 *this 的自减 n 次或自增 min(-n, size()) 次的 subrange

等价于 auto tmp = *this; tmp.advance(-n); return tmp; 。若迭代器在成为不可自减值后被自减则行为未定义。

目录

[编辑] 参数

n - 迭代器的最小自减次数

[编辑] 返回值

n >= 0n < 0 时分别为迭代器相对于 *this 的自减 n 次或自增 min(-n, size()) 次的 subrange

[编辑] 复杂度

通常在 n >= 0n < 0 或时分别为迭代器上的 n 次自减或 min(-n, size()) 次自增。

I 实现 random_access_iterator ,且 n >= 0 或者 std::sized_sentinel_for<S, I> 得到实现则为常数。

[编辑] 示例

[编辑] 参阅

(C++20)
以给定距离前进迭代器并返回原 subrange
(公开成员函数) [编辑]
(C++20)
以给定距离前进迭代器
(公开成员函数) [编辑]
(C++11)
令迭代器自减
(函数模板) [编辑]
自减迭代器给定的距离或到边界
(niebloid) [编辑]