forward_iterator_tag Struct


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at forward_iterator_tag Struct.

A class that provides a return type for iterator_category function that represents a forward iterator.

struct forward_iterator_tag    : public input_iterator_tag {};

The category tag classes are used as compile tags for algorithm selection. The template function needs to find out what is the most specific category of its iterator argument so that it can use the most efficient algorithm at compile time. For every iterator of type Iterator, iterator_traits< Iterator> ::iterator_category must be defined to be the most specific category tag that describes the iterator's behavior.

The type is the same as iterator< Iter> ::iterator_category when Iter describes an object that can serve as a forward iterator.

See iterator_traits or random_access_iterator_tag for an example of how to use the iterator_tags.

Header: <iterator>

Namespace: std

input_iterator_tag Struct
Thread Safety in the C++ Standard Library
Standard Template Library