iterator (Struct)
Struct base vacío usado para garantizar que una clase de iterador definida por el usuario funciona correctamente con iterator_trait
.
Sintaxis
struct iterator {
typedef Category iterator_category;
typedef Type value_type;
typedef Distance difference_type;
typedef Distance distance_type;
typedef Pointer pointer;
typedef Reference reference;
};
Comentarios
El struct de plantilla se usa como tipo base para todos los iteradores. Define los tipos de miembro:
iterator_category
(sinónimo para el parámetro de plantillaCategory
).value_type
(sinónimo para el parámetro de plantillaType
).difference_type
(sinónimo para el parámetro de plantillaDistance
).distance_type
(sinónimo para el parámetro de plantillaDistance
).pointer
(sinónimo para el parámetro de plantillaPointer
).reference
(sinónimo para el parámetro de plantillaReference
).
Tenga en cuenta que value_type
no debe ser un tipo constante incluso si pointer
puntos en un objeto de Type
const
y referencia designa un objeto de const
Type
.
Ejemplo
Vea iterator_traits para obtener un ejemplo de cómo declarar y usar los tipos de la clase base del iterador.
Requisitos
Encabezado:<iterator>
Espacio de nombres: std
Consulte también
<iterator>
Seguridad para subprocesos en la biblioteca estándar de C++
Referencia de biblioteca estándar de C++