29 Numerics library [numerics]

29.8 Generalized numeric operations [numeric.ops]

29.8.12 Iota [numeric.iota]

template<class ForwardIterator, class T> void iota(ForwardIterator first, ForwardIterator last, T value);
Requires: T shall be convertible to ForwardIterator's value type.
The expression ++val, where val has type T, shall be well-formed.
Effects: For each element referred to by the iterator i in the range [first, last), assigns *i = value and increments value as if by ++value.
Complexity: Exactly last - first increments and assignments.