[iterator.iterators] (original) (raw)

24 Iterators library [iterators]

24.3 Iterator requirements [iterator.requirements]

24.3.5 C++17 iterator requirements [iterator.cpp17]

24.3.5.2 Cpp17Iterator [iterator.iterators]

The Cpp17Iterator requirements form the basis of the iterator taxonomy; every iterator meets the Cpp17Iterator requirements.

This set of requirements specifies operations for dereferencing and incrementing an iterator.

A type X meets the Cpp17Iterator requirements if

Table 76 β€” Cpp17Iterator requirements [tab:iterator]

πŸ”—Expression Return type Operational Assertion/note
πŸ”— semantics pre-/post-condition
πŸ”—*r unspecified Preconditions: r is dereferenceable.
πŸ”—++r X&