A class or built-in type X models the Incrementable Iterator concept if, in addition to X being Assignable and Copy Constructible, the following expressions are valid and respect the stated semantics.
| Incrementable Iterator Requirements (in addition to Assignable, Copy Constructible) | ||
|---|---|---|
| Expression | Return Type | Assertion/Semantics |
| ++r | X& | &r == &++r |
| r++ | X |
{
X tmp = r;
++r;
return tmp;
}
|
| iterator_traversal<X>::type | Convertible to incrementable_traversal_tag | |