[iterator.concept.inc] (original) (raw)

24 Iterators library [iterators]

24.3 Iterator requirements [iterator.requirements]

24.3.4 Iterator concepts [iterator.concepts]

24.3.4.5 Concept incrementable [iterator.concept.inc]

The incrementable concept specifies requirements on types that can be incremented with the pre- and post-increment operators.

The increment operations are required to be equality-preserving, and the type is required to be equality_comparable.

[Note 1:

This supersedes the annotations on the increment expressions in the definition of weakly_incrementable.

— _end note_]

Let a and b be incrementable objects of type I.

I models incrementable only if:

[Note 2:

The requirement thata equals bimplies++a equals ++b(which is not true for weakly incrementable types) allows the use of multi-pass one-directional algorithms with types that model incrementable.

— _end note_]