For the definition of/*is-signed-integer-like*/, seeis-integer-like
.
This concept specifies requirements on types that can be incremented with the pre- and post-increment operators, but those increment operations are not necessarilyequality-preserving, and the type itself is not required to bestd::equality_comparable.
Forstd::weakly_incrementable
types,a== b does not imply that++a==++b. Algorithms on weakly incrementable types must be single-pass algorithms. These algorithms can be used with istreams as the source of the input data throughstd::istream_iterator.
[edit]Semantic requirements
For an objecti of typeI
,I
modelsstd::weakly_incrementable
only if all following conditions are satisfied:
- The expressions++i andi++ have the same domain.
- Ifi is incrementable, then both++i andi++ advancei.
- Ifi is incrementable, thenstd::addressof(++i)==std::addressof(i).
[edit]Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
[edit]See also