Freigeben über


iterator Struct

Eine leere niedrige Struktur verwendet, um sicherzustellen, dass eine benutzerdefinierte Iterator - Klasse mit iterator_traits ordnungsgemäß funktioniert.

template<class Category, class Type, class Distance = ptrdiff_t
    class Pointer = Type*, class Reference = Type&>
    struct iterator {
        typedef Category iterator_category;
        typedef Type value_type;
        typedef Distance difference_type;
        typedef Distance distance_type;
        typedef Pointer pointer;
        typedef Reference reference;
    };

Hinweise

Die Vorlagen Struktur fungiert als Basistyp für alle Iteratoren.Er definiert die Membertypen

  • iterator_category (ein Synonym für den Vorlagenparameter Category).

  • value_type (ein Synonym für den - Vorlagenparametertyp).

  • difference_type (ein Synonym für den Vorlagenparameter Distance).

  • distance_type (ein Synonym für den Vorlagenparameter Distance)

  • pointer (ein Synonym für den Vorlagenparameter Pointer).

  • reference (ein Synonym für den Vorlagenparameter Reference).

Beachten Sie, dass keine value_type Konstantenart sein soll, auch wenn Zeiger Punkte bei einem Objekt aus konstanten Verweis eingeben und Typ const ein Objekt festlegen.

Beispiel

Weitere Informationen finden Sie unter iterator_traits als ein Beispiel dafür, wie die Typen in den Iterator basisklasse deklariert und verwendet.

Anforderungen

Header: <iterator>

Namespace: std

Siehe auch

Referenz

<iterator>

Threadsicherheit in der C++-Standardbibliothek

Standardvorlagenbibliothek