iterator Struct
Uma struct de base vazio usado para garantir que uma classe definida pelo usuário iterador funcione corretamente com iterator_traits.
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;
};
Comentários
A estrutura do modelo serve como um tipo base para todos os iteradores.Ele define os tipos de membro
iterator_category(um sinônimo para o parâmetro do modelo Category).
value_type(um sinônimo para o parâmetro do modelo tipo de).
difference_type(um sinônimo para o parâmetro do modelo Distance).
distance_type(um sinônimo para o parâmetro do modelo Distance)
pointer(um sinônimo para o parâmetro do modelo Pointer).
reference(um sinônimo para o parâmetro do modelo Reference).
Observe que value_type não deve ser o mesmo-se um tipo de constante ponteiro pontos em um objeto de const tipo de e referência designa um objeto de const tipo de.
Exemplo
Consulte iterator_traits para obter um exemplo de como declarar e usar os tipos na classe base iterador.
Requisitos
Cabeçalho: <iterator>
Namespace: std