[range.iter.op.prev] (original) (raw)

24 Iterators library [iterators]

24.4 Iterator primitives [iterator.primitives]

24.4.4 Range iterator operations [range.iter.ops]

24.4.4.5 ranges​::​prev [range.iter.op.prev]

🔗

template<[bidirectional_iterator](iterator.concept.bidir#concept:bidirectional%5Fiterator "24.3.4.12 Concept bidirectional_­iterator [iterator.concept.bidir]") I> constexpr I ranges::prev(I x);

1

#

Effects: Equivalent to: --x; return x;

🔗

template<[bidirectional_iterator](iterator.concept.bidir#concept:bidirectional%5Fiterator "24.3.4.12 Concept bidirectional_­iterator [iterator.concept.bidir]") I> constexpr I ranges::prev(I x, iter_difference_t<I> n);

2

#

Effects: Equivalent to: ranges​::​advance(x, -n); return x;

🔗

template<[bidirectional_iterator](iterator.concept.bidir#concept:bidirectional%5Fiterator "24.3.4.12 Concept bidirectional_­iterator [iterator.concept.bidir]") I> constexpr I ranges::prev(I x, iter_difference_t<I> n, I bound);

3

#

Effects: Equivalent to: ranges​::​advance(x, -n, bound); return x;