A class or built-in type X models the Forward Traversal concept if, in addition to X meeting the requirements of Default Constructible and Single Pass Iterator, the following expressions are valid and respect the stated semantics.
| Forward Traversal Iterator Requirements (in addition to Default Constructible and Single Pass Iterator) | ||
|---|---|---|
| Expression | Return Type | Assertion/Note |
| X u; | X& | note: u may have a singular value. |
| ++r | X& | r == s and r is dereferenceable implies ++r == ++s. |
| iterator_traits<X>::difference_type | A signed integral type representing the distance between iterators | |
| iterator_traversal<X>::type | Convertible to forward_traversal_tag | |