constexpr counted_iterator& operator++();
Requires: cnt > 0
Effects: Equivalent to:
++current; --cnt;
Returns: *this.
decltype(auto) operator++(int);
Requires: cnt > 0.
Effects: Equivalent to:
--cnt; try { return current++; } catch(...) { ++cnt; throw; }
constexpr counted_iterator operator++(int)
requires ForwardIterator<I>;
Requires: cnt > 0
Effects: Equivalent to:
counted_iterator tmp = *this; ++*this; return tmp;