1.9 KiB
[counted.iter.const]
24 Iterators library [iterators]
24.5 Iterator adaptors [predef.iterators]
24.5.7 Counted iterators [iterators.counted]
24.5.7.2 Constructors and conversions [counted.iter.const]
constexpr counted_iterator(I i, iter_difference_t<I> n);
Hardened preconditions: n >= 0 is true.
Effects: Initializes current with std::move(i) andlength with n.
template<class I2> requires [convertible_to](concept.convertible#concept:convertible_to "18.4.4 Concept convertible_to [concept.convertible]")<const I2&, I> constexpr counted_iterator(const counted_iterator<I2>& x);
Effects: Initializes current with x.current andlength with x.length.
template<class I2> requires [assignable_from](concept.assignable#concept:assignable_from "18.4.8 Concept assignable_from [concept.assignable]")<I&, const I2&> constexpr counted_iterator& operator=(const counted_iterator<I2>& x);
Effects: Assigns x.current to current andx.length to length.
Returns: *this.